stremio-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| ADB_PATH | No | Path to the adb binary | adb |
| ANDROID_TV_HOST | No | IP or hostname of the Android TV | |
| ANDROID_TV_PORT | No | adb TCP port on the TV | 5555 |
| STREMIO_AUTH_KEY | No | Stremio auth key, or call stremio_login once | |
| STREMIO_MCP_STATE_DIR | No | Directory for cached login, subtitle files, and addon backups (default: platform data dir) | |
| STREMIO_MCP_ADDON_PORT | No | Port the built-in subtitle addon serves on | 9876 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| stremio_searchB | Search movies or series by name through the public Cinemeta catalog. |
| stremio_get_metaB | Get full metadata for a title by IMDb id, including the episode list for a series. |
| stremio_browse_catalogC | Browse the public Cinemeta top catalog, optionally filtered by genre. |
| stremio_get_addon_manifestC | Fetch a Stremio addon's manifest and summarize what it can do. |
| stremio_get_streamsB | Ask one specific addon for the streams it has for a movie or episode. |
| stremio_find_streamsB | Ask every stream addon on the account for a title, all at once. This is what Stremio itself does when you open a title: it queries the installed addons in order and merges the results. Addons that fail or have nothing are reported separately rather than silently dropped. |
| stremio_loginA | Sign in to a Stremio account with an email and password. The auth key is kept for this server's lifetime and, with remember, also cached in the user state directory so later runs stay signed in. Accounts created through Facebook or Google cannot use this; set STREMIO_AUTH_KEY for those. |
| stremio_logoutA | Forget the stored Stremio auth key on this machine. |
| stremio_account_statusA | Report whether a Stremio account is reachable and who is signed in. |
| stremio_get_libraryA | List the account's library titles. include_removed also lists soft-deleted entries, which is where watch history lives. content_type filters to 'movie' or 'series'. watched is 'any', 'yes' or 'no'. |
| stremio_continue_watchingA | List part-watched titles with their resume positions, most recent first. This is the row Stremio shows on its home board. position_ms is where playback stopped, so it can be handed straight to a player. |
| stremio_add_to_libraryA | Add a movie or series to the account library by IMDb id. Re-adding a title that was removed restores it with its watch state. |
| stremio_remove_from_libraryB | Remove a title from the account library. Watch state is kept. |
| stremio_mark_watchedA | Mark a library title watched or unwatched across every signed-in device. Marking it watched also clears the resume position so it leaves the continue-watching row. |
| stremio_list_addonsA | List the addons installed on the Stremio account. These are the addons every signed-in device sees, including Stremio desktop on macOS, Windows and Linux. Order matters: for a given stream request Stremio queries addons top to bottom. |
| stremio_search_addonsA | Search the official Stremio addon directory for addons to install. Leave query empty to list the directory. Pass a returned transportUrl to stremio_install_addon. Addons flagged configuration_required must be configured in a browser first, which produces the real manifest URL. |
| stremio_install_addonA | Install an addon onto the Stremio account by its manifest URL. It shows up on every signed-in device: Stremio desktop on macOS, Windows and Linux, Android TV, mobile and web. Reinstalling an already-present addon upgrades it in place. position places the addon in the query order (0 is queried first); -1 appends. |
| stremio_uninstall_addonB | Remove an addon from the account by its manifest URL or its addon id. |
| stremio_reorder_addonsA | Set the order Stremio queries addons in, highest priority first. Pass the addon ids you care about; anything you leave out keeps its relative order behind them. Stream results follow this order, so moving a preferred stream provider to the front changes what plays first. |
| stremio_restore_default_addonsA | Reinstall Stremio's seven default addons onto the account. Use this when the addon list is empty or broken. keep_installed keeps any other addon already on the account and only fills in the missing defaults; pass false to reset the account to a stock addon list. |
| stremio_configure_addonA | Run a configurable addon's browser setup and install its result. First call with a directory addon id, name or transport URL. The tool reports the page fields and opens the configuration page. Complete that page, then call again with the configured manifest URL it produces. |
| stremio_save_addon_profileC | Save the account's current ordered addon collection under a name. |
| stremio_list_addon_profilesA | List saved addon profiles and the ordered addon ids in each one. |
| stremio_apply_addon_profileA | Replace the account addon collection with a saved named profile. The protected-addon guard and automatic backup are applied before the account write. |
| stremio_trakt_syncA | Link Trakt in the browser, then install or refresh Stremio's Trakt addon. On the first call, the account-specific authorization page opens. After authorizing Trakt, run the tool again to sync the first-party addon. |
| stremio_upcoming_episodesB | List episodes releasing soon for series in the account library. |
| stremio_next_unwatched_episodeC | Resolve the first unwatched regular episode using synced library history. |
| stremio_search_all_catalogsC | Search every installed addon catalog that declares search support. |
| stremio_auto_fetch_subtitleB | Fetch a hash-matched OpenSubtitles result and serve it through add_subtitle. Pass a playable video_url while Stremio desktop is running so its server calculates the hash, or provide video_hash and video_size directly. |
| stremio_desktop_statusA | Report whether Stremio desktop is installed and running on this machine. Works on macOS, Windows and Linux. The streaming server is the local component that turns torrents into playable HTTP streams; it only answers while the desktop app is open. |
| stremio_desktop_launchA | Launch Stremio desktop on this machine and wait for its streaming server. Run this before asking the desktop app to play something, and after installing addons so the app pulls the new collection from the account. |
| stremio_desktop_openA | Open a title, or a named page, in Stremio desktop on this machine. Pass an imdb_id like 'tt1375666' to open its detail page, adding season and episode for a series. Or pass page as one of 'addons', 'library', 'board', 'search', 'settings' to jump straight there. |
| stremio_desktop_show_addonA | Open an addon's install page in Stremio desktop so it can be reviewed. Use this for addons that need configuring by hand. For a headless install that also reaches every other device, use stremio_install_addon instead. |
| stremio_desktop_downloadA | Download the Stremio desktop installer for this machine's OS and CPU. Reads the official downloads page, picks the macOS .dmg, the Windows .exe or the Linux .deb that matches the architecture, and saves it to the Downloads folder. Pass target_platform as 'Darwin', 'Windows' or 'Linux' to fetch an installer for a different machine. Running the installer is left to you because it needs an admin password. |
| stremio_desktop_playB | Select an installed-addon stream and start it in Stremio desktop. Streams follow installed addon order, then each addon's result order. stream_index selects from that merged list. For a continue-watching item, pass its video_id so Stremio restores the account's saved timeOffset. |
| stremio_addon_health_checkA | Check every installed addon's manifest reachability and latency. |
| stremio_check_addon_upgradesA | Compare installed addon versions with live manifests and optionally apply upgrades. Leave apply false to inspect. Set apply true to reinstall every newer manifest in one guarded account collection update. |
| stremio_tv_pairA | Pair adb with an Android 11+ TV using its six-digit wireless code. pairing_port is the port shown beside the pairing code. host defaults to ANDROID_TV_HOST. Pass connect_port when the TV shows a separate wireless debugging port and the tool will connect after pairing. |
| stremio_cast_devicesA | Discover Chromecast and DLNA renderers through Stremio desktop. |
| stremio_cast_playB | Play an HTTP stream or local torrent engine file on Chromecast or DLNA. device accepts a discovered id or exact name. Pass stream_url, or pass info_hash and file_index for a torrent active in Stremio desktop. |
| stremio_cast_controlC | Read or control cast playback with status, pause, resume, stop, seek or volume. |
| stremio_streaming_server_streamsA | List active torrent engines, transfer rates and per-file download progress. The Stremio desktop app must be running. Pass an info_hash to inspect one engine, or leave it empty to inspect every active torrent. |
| stremio_streaming_server_cacheA | Show the desktop streaming server's cache limit, usage and torrent entries. |
| stremio_streaming_server_purge_cacheA | Delete cached torrent data after stopping the matching torrent engines. Set confirm=true. Pass one info_hash to purge that torrent, or leave it empty to purge the complete desktop torrent cache. |
| add_subtitleB | Serve a subtitle file for a title through the MCP subtitle addon. subtitle_url is an http(s) link to an .srt file. Give season and episode to attach it to one episode; without them it covers the whole title. The subtitle then shows up in Stremio's subtitle picker on any device that can reach this machine on the LAN. |
| list_subtitlesA | List every subtitle currently served by the MCP subtitle addon. |
| remove_subtitleB | Stop serving subtitles for a title. Omit subtitle_id to remove them all. |
| sync_addonA | Install the MCP subtitle addon onto the Stremio account. Run this if the addon is missing from the subtitle picker. Every other installed addon is left untouched. |
| playB | Open a movie or series episode in Stremio on the Android TV. imdb_id like 'tt1375666'. For series pass season and episode. After the detail page opens, presses OK to start the highlighted stream. |
| tv_controlA | Control the TV: category is 'volume' | 'playback' | 'navigate' | 'power'. volume: up/down/mute/status, or set with value in the device's own range. playback: play/pause/toggle/stop/next/previous/forward/rewind. navigate: up/down/left/right/select/back/home. power: wake/sleep/toggle/status. |
| push_subtitleA | Push an SRT subtitle file to the Android TV Downloads folder. subtitle_url_or_path: URL to download the SRT from, or a local absolute path. filename: name for the file on the TV (must end in .srt). Set clear_player_default to also forget Stremio's chosen video app, so Android asks again on the next play and an external player like VLC can take over. For subtitles inside Stremio itself, use add_subtitle. |
| playback_statusA | Report what Stremio is playing on the TV: title, state, position, duration (ms). |
| tv_statusA | Report the TV: model, Android version, installed Stremio version, power and volume. Run this first when a TV tool misbehaves; it proves whether adb can reach the device at all. |
| tv_type_textA | Type text into whatever field is focused on the TV, such as Stremio's search box. |
| tv_screenshotA | Capture what the TV is showing and save it as a PNG on this machine. Use it to see which item the remote is sitting on before pressing select. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 55 tools
Most tools target distinct resources or platforms, and the descriptions clarify device-specific playback, addon installation, and subtitle handling. However, there is meaningful overlap among the many playback, search, and addon-management tools (e.g., play vs. stremio_desktop_play vs. stremio_cast_play; search vs. search_all_catalogs; install/configure/show addon), so an agent must read carefully to avoid misselection.
Most tools use snake_case with a stremio_ prefix, but a significant subset (play, add_subtitle, tv_control, push_subtitle, sync_addon, playback_status, etc.) omits that prefix and mixes verb-first, noun-first, and bare-verb styles. The result is readable but not a consistent verb_noun convention.
55 tools is far beyond the practical range for an MCP server, even one covering account, desktop, TV, casting, subtitles, and addons. Many operations could be consolidated or grouped, and the large surface will burden tool selection and agent context.
The surface is extensive: authentication, discovery, library/watch state, addon lifecycle and profiles, subtitle serving/pushing, desktop, streaming server, Android TV, casting, and Trakt sync are all represented. Minor gaps exist (e.g., deleting saved addon profiles, browsing arbitrary installed catalogs), but core workflows are well covered.