The Rewind MCP server gives AI assistants direct access to your personal data across every domain. Ask about your listening history, running stats, movie collection, vinyl records, reading highlights, or events you’ve attended using natural language. Built on Model Context Protocol, an open standard from Anthropic; works with any MCP-compatible client (Claude, Cursor, VS Code, Windsurf, etc.).Documentation Index
Fetch the complete documentation index at: https://docs.rewind.rest/llms.txt
Use this file to discover all available pages before exploring further.
Listening
Now playing, top artists/albums/tracks, streaks, stats
Running
Recent runs, per-mile splits, PRs, streaks, stats
Watching
Recent watches, browse by genre, decade, or director, stats
Collecting
Vinyl records, Blu-ray/4K UHD/HD DVD, collection stats
Reading
Articles, highlights, random highlight, stats
Attending
Sports games, concerts, theater, season W/L, players you’ve watched
Cross-Domain
Full-text search, unified feed, on-this-day
Installation
- Desktop Apps
- Mobile & Web
- Claude Code
Add to your MCP client config (Claude Desktop, ChatGPT, Gemini, etc.):Restart the app after saving.
REWIND_API_URL defaults to https://api.rewind.rest.
Available Tools
Listening
Listening
| Tool | Description |
|---|---|
get_now_playing | Currently playing track (with album cover + Apple Music link) |
get_recent_listens | Recent scrobbles with date filtering + pagination |
get_listening_stats | Total scrobbles, unique artists/albums/tracks, daily average |
get_top_artists | Top artists by period (7d, 1m, 3m, 6m, 12m, all-time) + top-N images |
get_top_albums | Top albums by period + top-N covers |
get_top_tracks | Top tracks by period; optional artist_id / artist_name filters to a single artist’s catalog |
get_listening_streaks | Current and longest consecutive listening streaks |
get_artist_details | Bio, total plays, all-time rank, first/last played, top tracks, top albums, similar artists you’ve also listened to, yearly sparkline; renders as an interactive single-artist card in MCP Apps clients |
get_album_details | Album info, play count, track listing, cover art |
get_listening_genres | Genre breakdown over time (week / month / year grouping) |
Running
Running
| Tool | Description |
|---|---|
get_running_stats | Total runs, distance, elevation, pace, Eddington number |
get_recent_runs | Recent activities with distance, pace, duration, location + pagination |
get_personal_records | Fastest times at mile, 5K, 10K, half marathon, marathon |
get_running_streaks | Current and longest consecutive running streaks |
get_activity_details | Full details for a single run (heart rate, elevation, calories) |
get_activity_splits | Per-mile splits with pace, elevation, and heart rate |
get_running_years | Per-year summary: total runs, distance, elevation, pace, race count |
Watching
Watching
| Tool | Description |
|---|---|
get_recent_watches | Recently watched movies + posters + Letterboxd review links; renders as an interactive poster grid in MCP Apps clients |
get_movie_details | Director, genres, rating, summary, watch history, poster |
browse_movies | Browse by genre, decade, director, or year with sorting |
get_watching_stats | Total movies, watch time, top genre/director, TV stats |
get_watching_genres | Genre breakdown across all watched movies |
get_watching_decades | Decade breakdown across all watched movies |
get_watching_directors | Top directors by watched-movie count |
Collecting
Collecting
| Tool | Description |
|---|---|
get_vinyl_collection | Browse vinyl records with search, format/genre/artist filters |
get_collecting_stats | Total items, format breakdown, unique artists, genre data |
get_physical_media | Browse Blu-ray, 4K UHD, and HD DVD collection |
get_physical_media_stats | Physical media totals and format breakdown |
Reading
Reading
| Tool | Description |
|---|---|
get_recent_reads | Recently saved articles with title, author, domain, reading time, description |
get_article | Full plain-text article body + metadata + highlights for one article by id. Use this to read past the excerpt (including paywalled sources) instead of falling back to web search. Renders as an interactive single-article card in MCP Apps clients. |
get_reading_highlights | Saved highlights with text, notes, and source article |
get_random_highlight | A single random highlight for inspiration or reflection |
get_reading_stats | Total articles, finished count, highlights, word count |
find_similar_articles | Thematically related articles via cosine similarity over stored Voyage vectors |
semantic_search and search with mode=semantic|hybrid let the model recall articles by gist rather than exact words; hybrid fuses FTS + vectors via reciprocal rank fusion.Attending
Attending
| Tool | Description |
|---|---|
get_attended_events | List events you bought tickets for (sports games, concerts, theater) with category/year/venue filters |
get_attended_event | Single event detail with venue, tickets, and per-player stat lines |
get_attended_season | Sports season W/L + game list with notable performers; renders as an interactive grid in MCP Apps clients |
get_attended_players | Search the players-you-have-watched-play list by name (substring), league, or team. Resolves “julio” / “kirby” to a player id without a follow-up turn |
get_attended_player | Player bio, team, live current-season stats (MLB), your-attended summary, recent appearances; renders as an interactive athlete card in MCP Apps clients |
get_attended_player_stats | Per-player aggregate slash line / pitching line across the games you attended. MLB only; default scope is career (single seasons typically have tiny samples). Always cites pa / bf / games for honest phrasing |
get_attending_stats | Aggregate counts of attended events by category, type, and year |
get_attending_year_in_review | Year-in-review summary: totals, monthly breakdown, top venues, top performers, and full event list |
Cross-Domain
Cross-Domain
| Tool | Description |
|---|---|
search | Search across all domains. mode=keyword (default, FTS), semantic or hybrid (reading) |
semantic_search | Paraphrased / meaning-based article recall via Voyage embeddings (reading only, returns scores) |
get_feed | Unified chronological feed of all activity |
get_on_this_day | What happened on this date in previous years |
System
System
| Tool | Description |
|---|---|
get_health | API health + last-sync timestamps per domain. Useful first call when diagnosing stale data. |
Example Queries
- “What have I been listening to this week?”
- “Compare my mile splits from this month vs last month”
- “When was the last time I watched a Wes Anderson film?”
- “What Beastie Boys records do I have on vinyl?”
- “Show me a random reading highlight”
- “Search my data for ‘Radiohead’”
- “What happened on this day in previous years?”
- “Find that article I read about a former SNL writer” — uses
semantic_searchto recall the article by meaning rather than keywords - “What else was I reading like that piece?” — chains into
find_similar_articles
Rich Responses
Tool responses follow the MCP 2025-06-18 content model and include more than plain text:- Images. Detail tools (
get_movie_details,get_album_details,get_artist_details) and list tools (get_recent_watches,get_recent_listens,get_top_albums,get_vinyl_collection, etc.) return cover art / posters / artist imagery asimagecontent blocks (top-N on lists, default N=5). Passinclude_images: falseto skip them when keeping responses compact matters. - Resource links. External platform URLs come back as
resource_linkcontent blocks — Letterboxd reviews, Strava activities, Discogs releases, Apple Music pages, original article URLs, Last.fm pages. - Structured content. Every tool also returns
structuredContentwith a JSON shape that mirrors the underlying API response, so the model can reason over exact numbers without re-parsing prose. - Interactive UI. Several tools advertise MCP Apps UI resources — clients that support MCP Apps (Claude Desktop, Claude web, Claude iOS, VS Code GitHub Copilot, Goose) render inline cards; other clients get the standard text + image + resource_link + structuredContent response unchanged. Today:
get_recent_watches(poster grid),get_attended_season(season game-by-game grid), andget_attended_event(single-game card with linescore + notable performers + ticket info).
Entity Resources
The server exposes@-mentionable resources for fetching full detail on any entity:
| Entity | URI | Source endpoint |
|---|---|---|
| Movie | rewind://movie/{id} | /v1/watching/movies/{id} |
| Show | rewind://show/{id} | /v1/watching/shows/{id} |
| Album | rewind://album/{id} | /v1/listening/albums/{id} |
| Artist | rewind://artist/{id} | /v1/listening/artists/{id} |
| Vinyl | rewind://vinyl/{id} | /v1/collecting/vinyl/{id} |
| Physical media | rewind://physical-media/{id} | /v1/collecting/media/{id} |
| Article | rewind://article/{id} | /v1/reading/articles/{id} |
| Highlight | rewind://highlight/{id} | /v1/reading/highlights/{id} |
| Activity | rewind://activity/{id} | /v1/running/activities/{id} |
| Sync status | rewind://sync/status | /v1/health/sync |
| Year in review | rewind://{domain}/year/{year} | /v1/{domain}/year/{year} (listening, running, watching) |
@rewind:<uri> to pull the full record into the conversation. search returns resource_links pointing at these URIs so clients can drill from a match straight into the full record.
Prompt Templates
The server includes built-in prompt templates for common multi-step queries:| Prompt | Description |
|---|---|
weekly-summary | Summarize activity across all domains for the past week |
year-in-review | Generate a comprehensive year-in-review for a given year |
compare-periods | Compare activity between two time periods for a single domain |
letterboxd-review-draft | Draft a Letterboxd-style review for a recently watched, unrated film |
training-report | Coach-style running report for the last 7-14 days |
film-diet | Portrait of your film-watching taste (genre mix, decades, directors) |
find-article | Recover a half-remembered article via hybrid+semantic search, with related pieces |
Environment Variables
REWIND_API_KEY(required) — Your Rewind API keyREWIND_API_URL(optional) — API base URL, defaults tohttps://api.rewind.rest
Security
The MCP server has read-only access to your data. No write or admin
operations are exposed.
- Local mode: Your API key stays on your machine in the local config file. The server runs as a child process and communicates over stdin/stdout.
- Remote mode: Your API key is sent to
mcp.rewind.rest, a Cloudflare Worker you control. All communication is over HTTPS. - The server is stateless — no data is cached or stored locally.
Source Code
Browse on GitHub
npm Package
rewind-mcp-server