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.
Reading domain: full Instapaper archive
Reading endpoints now serve your full Instapaper archive instead of the live API’s recent slice. Older articles are searchable and retrievable viaget_article.GET /v1/reading/articlesandGET /v1/reading/recentacceptinclude_no_body=1to include rows that exist but couldn’t be body-extracted (paywalled sources). Default hides them.- Single-article responses include a
body_unavailableflag for those placeholder rows so cards can render “read on source” instead of empty content.
Single-entity cards
Three interactive cards for MCP Apps clients (Claude Desktop + iOS) that render alongside Claude’s text answer when you ask about one specific article, artist, or athlete.- Article card —
get_article— hero image, title, byline, read time, top highlights, link out to source. - Artist card —
get_artist_details— portrait, bio, total plays, all-time rank, yearly sparkline, top 5 tracks, top 3 albums, and similar artists scoped to your own scrobble history. - Athlete card —
get_attended_player— headshot, team logo, position, current-season stats, your-attended summary across every game you’ve seen them play, recent appearances. MLB-only for live stats; other leagues surface appearance history.
Listening
- Per-artist top tracks —
GET /v1/listening/top/tracksacceptsartist_idorartist_nameto scope to a single artist. Combine withperiodfor “what Olivia Rodrigo songs have I been listening to lately”. - Extended artist detail —
GET /v1/listening/artists/{id}now carries bio, last-played timestamp, all-time rank, distinct tracks/albums counts, similar artists, and a yearly sparkline.
Team logos and colors on attending responses
Team metadata now ships inline on every attending endpoint that mentions a team — no follow-up call to render a logo or tint a card.- New
teamsreference table seeded from MLB Stats API (roster, division, home venue) and ESPN (brand colors). 30 MLB teams to start; NFL, NBA, MLS, and NCAA can be added on the same shape. event_data.home_teamandevent_data.away_teamonGET /v1/attending/eventsandGET /v1/attending/events/{id}now return a full team object withlogo_url,logo_dark_url,logo_light_url,primary_color,secondary_color,ui_tint_color,conference, anddivision.primary_teamonGET /v1/attending/playersandGET /v1/attending/players/{id}replaces the oldprimary_team_idfield with the full team shape.- Per-game player appearances expose a
teamobject instead ofteam_id, reflecting the in-game team — handles mid-season trades correctly without conflating with the player’s current primary team. - Logos hot-link from
mlbstatic.comSVG with on-light and on-dark cap variants;<picture>+prefers-color-schemepicks the right one in both Claude Desktop and iOS hosts.
Attending domain
New fifth domain for live events — sports games, concerts, theater. 193 events backfilled from Google Calendar and Gmail across 2016–2026.GET /v1/attending/events— list attended events with filters for category (sports/music/arts),event_type,season,year,venue_id, andattended(separates “I went” from “I bought tickets but didn’t go”).GET /v1/attending/events/{id}— single event with venue, multiple ticket rows, and league-specificevent_data(scores, winning pitcher, my_team_won).GET /v1/attending/seasons/{league}/{season}— attended games in a sports season with W/L record. Counts only games you actually attended, not the team’s full record.GET /v1/attending/venues— venue catalog with city, capacity, and lat/long.GET /v1/attending/stats— counts by category,event_type, and year.- Seven Gmail parsers — Ticketmaster, SeatGeek, Ticket Club, AXS, StubHub, VividSeats, and Eventbrite. Universal
schema.org/EventReservationJSON-LD parser as a fallback. - Sports enrichment via MLB Stats API (baseball) and ESPN (NFL, NBA, WNBA, MLS, NCAAF, NCAAB) attaches scores and outcomes to past games.
- Cross-domain link — concert performers can carry a
lastfm_artist_idso a single artist row drives both your scrobble history and your concert attendance. - Daily incremental sync at 4:00 AM Pacific. See Attending domain.
MCP server
Interactive card UIs for reading and music, plus inline clickable links across list tools.- Article list UI for
get_recent_readsvia MCP Apps — titles, authors, domains, read time, excerpts, and thumbnails. - Cover grid for
get_top_albumsand portrait grid forget_top_artists— both click through to Apple Music (or Last.fm when no match). - Inline markdown links in
search,semantic_search,find_similar_articles,get_recent_reads,get_top_artists,get_top_albums, andget_top_tracks— clickable in every client. - Author names render correctly when a source article’s
article:authortag is URL-shaped. get_top_artistsacceptsinclude_sparklinesand forwards the new per-artist play-count series.
Listening
- Sparklines on top artists — pass
include_sparklines=truetoGET /v1/listening/top/artiststo attach a zero-filled play-count series per artist. Supported for1month,3month,6month, and12month. See Listening domain. - Album and artist artwork now resolves for ampersand-named artists like Matt & Kim, Simon & Garfunkel, and Hall & Oates.
- Listening image placeholders auto-expire after 7 days, matching reading-domain behavior.
Search
GET /v1/searchresults now includeimageURLs and thumbhashes for listening, watching, collecting, and reading hits. The field was previously always null in keyword mode.
API discovery
The OpenAPI 3.1 spec is reachable without auth athttps://api.rewind.rest/openapi.json (redirects to the canonical /v1/openapi.json). Use it to generate clients, drive agent tools, or import into Postman or Insomnia.Reading
- Reading articles now have thumbnails for most paywalled sources (NYT, Reuters, WSJ) via multi-tier OG extraction.
descriptionnow falls back toog_descriptionwhen the editorial field is null.POST /v1/admin/reenrich-readinggains amodeparam:failed(default) ormissing-images.- Reading image placeholders auto-expire after 7 days (previously permanent).
MCP server
- Interactive poster grid for
get_recent_watchesvia MCP Apps — renders inline in Claude Desktop, Claude web, VS Code GitHub Copilot, and Goose. - Semantic and hybrid search for reading via new
semantic_searchandfind_similar_articlestools;searchgains amodeparam (keyword|semantic|hybrid). - Full article text via new
get_article(id)tool — returns the Instapaper body, including paywalled NYT / WSJ / Atlantic. - Instapaper deep-links on every reading article:
instapaper_url(paywall-free web archive) andinstapaper_app_url(iOS app). - New prompts:
letterboxd-review-draft,training-report,film-diet, andfind-article.
API
GET /v1/search?mode=keyword|semantic|hybrid— three ranking modes; semantic/hybrid are reading-only.GET /v1/reading/articles/{id}— gainscontent,instapaper_url,instapaper_app_url.GET /v1/reading/articles/{id}/related?limit=5— related articles via semantic similarity.GET /v1/reading/highlights/{id}— highlight detail with parent-article context.- All
/recentendpoints:limitcap raised from 20 to 50, newpageparam for offset pagination.
MCP server
New MCP server for connecting AI assistants to your Rewind data. Published asrewind-mcp-server on npm.- 30 tools across all five domains: listening, running, watching, collecting, reading.
- Cross-domain search, unified feed, and on-this-day.
- Built-in prompt templates for weekly summaries, year-in-review, and period comparisons.
- Works with Claude Desktop, Claude Code, Claude iOS/web, and any MCP-compatible client.
- Local mode via
npxor remote mode viamcp.rewind.rest.
Reading domain: delta sync
Instapaper sync now transfers only new or changed bookmarks and highlights each cycle, and deletions from Instapaper propagate through./health/sync now includes the Reading domain.Reading domain
New Reading domain powered by Instapaper. Track articles, reading progress, and highlights.GET /reading/articles— browse and filter articles by status, domain, or tag.GET /reading/currently-reading— articles in progress.GET /reading/highlights— highlighted passages across all articles.GET /reading/highlights/random— random highlight for a daily quote.GET /reading/stats— reading statistics and streaks.GET /reading/year/{year}— year in review.
Public API documentation
Launched interactive API documentation at docs.rewind.rest powered by Mintlify. Includes getting started guides, domain overviews, and a full API reference with response examples and an interactive playground.Apple Music enrichment
Listening endpoints now includeapple_music_url and preview_url fields on tracks, artists, and albums. Links go directly to the matching item on Apple Music. Preview URLs point to 30-second audio clips when available.Watching: reviews, ratings, and last watched
- Movies endpoint now includes
last_watched_atfor sorting by when you last watched. - Reviews and ratings from Letterboxd are now exposed via
review,review_url, anduser_ratingfields on watch history entries.
Genres, on-this-day, and date filtering
- New
GET /listening/genresendpoint with genre breakdown over time. - Artists now tagged with genres from Last.fm (
genrefield on artist responses). - New
GET /feed/on-this-dayendpoint for what happened on this date in previous years. - Artist and album detail endpoints now include
first_scrobbled_at. - All recent, stats, and feed endpoints now accept
date,from, andtoquery parameters. - Album and artist artwork falls back to Deezer when Apple Music and iTunes don’t have a match.
Trakt physical media collection
New physical media endpoints in the Collecting domain. Track your Blu-ray, DVD, and 4K UHD collection synced from Trakt, with cross-referencing against your Plex watch history.GET /collecting/media— list physical media collection.GET /collecting/media/:id— media item detail.GET /collecting/media/stats— collection statistics by format.GET /collecting/media/cross-reference— owned vs. watched comparison.
Cross-domain features
New endpoints that work across all data domains:GET /feed— unified activity feed with cursor-based pagination.GET /feed/domain/:domain— filter feed to a single domain.GET /search— full-text search across listening, running, watching, and collecting.GET /health— API health check.GET /health/sync— sync status for all domains.