npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@kud/mcp-trakt

v1.5.3

Published

MCP server for Trakt — TV show and movie tracking with full sync support.

Readme

TypeScript Node.js npm MIT

MCP server for Trakt — TV show and movie tracking with full sync support.

Website · Documentation

Features

  • 53 tools — complete coverage of the Trakt API: search, metadata, sync, ratings, watchlists, and check-ins.
  • OAuth via macOS Keychain — credentials stored securely; one-time setup with npx @kud/mcp-trakt setup.
  • Personalised calendars — see your upcoming episodes and movies, or browse what's airing across all Trakt users.
  • Full sync support — history, collection, watched state, playback progress, and last-activity timestamps.
  • Scrobble lifecycle — start, pause, and stop playback tracking so watches are recorded automatically.
  • Recommendations — personalised movie and show suggestions driven by your viewing history.

Install

1. Create a Trakt application

Create an app at trakt.tv/oauth/applications/new — or manage existing ones at trakt.tv/oauth/applications:

  • Redirect URI — set it to urn:ietf:wg:oauth:2.0:oob. This server authenticates with Trakt's device flow, which never redirects, but Trakt requires the field; oob is the standard out-of-band placeholder.
  • Copy the Client ID and Client Secret — you'll paste them in the next step.

2. Authenticate

Run the one-time OAuth setup. It exchanges your credentials for an access token and stores everything in the macOS Keychain (service mcp-trakt):

npx @kud/mcp-trakt@latest setup

Credentials resolution: the server reads from the macOS Keychain by default. On platforms without Keychain (Linux, CI, Docker), set MCP_TRAKT_CLIENT_ID and MCP_TRAKT_ACCESS_TOKEN instead — env vars take precedence over the Keychain.

Then register the server with your MCP client:

claude mcp add trakt npx -- -y @kud/mcp-trakt@latest

Or add it manually to your MCP client config:

{
  "mcpServers": {
    "trakt": {
      "command": "npx",
      "args": ["-y", "@kud/mcp-trakt@latest"]
    }
  }
}

Usage

Once connected, the following tools are available grouped by category.

Search

| Tool | Description | | -------- | ---------------------------------------------------- | | search | Search for movies, shows, episodes, people, or lists |

Movies

| Tool | Description | | --------------------------- | --------------------------------------------------- | | get_movie | Get detailed information about a movie | | get_trending_movies | Movies currently being watched across Trakt | | get_popular_movies | Most popular movies on Trakt | | get_anticipated_movies | Most anticipated movies based on watchlist activity | | get_boxoffice_movies | Top 10 weekend box office movies, updated weekly | | get_movie_ratings | Community rating distribution for a movie | | get_movie_related | Movies related to a given movie | | get_movie_people | Cast and crew for a movie | | get_movie_recommendations | Personalised movie recommendations |

Shows

| Tool | Description | | -------------------------- | ------------------------------------------------------- | | get_show | Get detailed information about a TV show | | get_trending_shows | TV shows currently being watched across Trakt | | get_popular_shows | Most popular TV shows on Trakt | | get_anticipated_shows | Most anticipated TV shows based on watchlist activity | | get_show_ratings | Community rating distribution for a TV show | | get_show_seasons | All seasons for a show, optionally with episode details | | get_show_people | Cast and crew for a TV show | | get_show_related | TV shows related to a given show | | get_show_recommendations | Personalised TV show recommendations |

Episodes

| Tool | Description | | --------------------- | ----------------------------------- | | get_season_episodes | All episodes in a specific season | | get_episode | Full details for a specific episode |

People

| Tool | Description | | -------------------- | ---------------------------------------------- | | get_person | Details about a person (actor, director, etc.) | | get_person_credits | Movie or show credits for a person |

Calendar

| Tool | Description | | ------------------------ | ------------------------------------------- | | get_my_show_calendar | Upcoming episodes based on shows you watch | | get_my_movie_calendar | Upcoming movies based on your watchlist | | get_all_show_calendar | All shows airing across all Trakt users | | get_all_movie_calendar | All movies releasing across all Trakt users |

History

| Tool | Description | | --------------------- | ---------------------------------------- | | get_history | Watch history for the authenticated user | | add_to_history | Mark movies or episodes as watched | | remove_from_history | Remove items from watch history |

Collection

| Tool | Description | | ------------------------ | ------------------------------------------------- | | get_collection_movies | All movies in your collection | | get_collection_shows | All shows in your collection | | add_to_collection | Add movies, shows, or episodes to your collection | | remove_from_collection | Remove items from your collection |

Watched

| Tool | Description | | -------------------- | ------------------------------------------------------- | | get_watched_movies | All movies you have watched with play counts | | get_watched_shows | All shows you have watched with play counts per episode |

Playback

| Tool | Description | | ----------------- | ---------------------------------------- | | get_playback | Paused playback progress to resume later | | delete_playback | Delete a paused playback entry |

Sync

| Tool | Description | | -------------------------- | -------------------------------------------------- | | get_sync_last_activities | Timestamps for when each resource was last updated |

Ratings

| Tool | Description | | --------------- | ---------------------------------------------------- | | get_ratings | Ratings you have given, filterable by type and value | | add_rating | Rate movies, shows, seasons, or episodes (1–10) | | remove_rating | Remove ratings from movies, shows, or episodes |

Watchlist

| Tool | Description | | ----------------------- | ------------------------------------------------- | | get_watchlist | Your watchlist, filterable by type and sort order | | add_to_watchlist | Add movies, shows, or episodes to your watchlist | | remove_from_watchlist | Remove items from your watchlist |

Check-in

| Tool | Description | | ---------------- | --------------------------------------------------------- | | checkin | Check in to a movie or episode you are watching right now | | delete_checkin | Cancel the current active check-in |

Scrobble

| Tool | Description | | ---------------- | ------------------------------------------------------ | | scrobble_start | Start scrobbling when playback begins | | scrobble_pause | Pause scrobbling when playback is paused | | scrobble_stop | Stop scrobbling when playback ends to record the watch |

User

| Tool | Description | | ------------------- | -------------------------------------- | | get_user_profile | Profile information for any Trakt user | | get_user_stats | Watch statistics for a user | | get_user_watching | What a user is currently watching |

Development

git clone https://github.com/kud/mcp-trakt.git
cd mcp-trakt
npm install
npm run dev          # run directly with tsx, no build needed
npm run inspect:dev  # open the MCP Inspector against live tsx
npm run build        # compile TypeScript to dist/
npm run typecheck    # type-check without emitting
npm test             # run the test suite

📚 Full documentation → mcp-trakt/docs