Skip to main content
Glama
CarlDog

servarr-mcp

by CarlDog

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LIDARR_URLNoLidarr server URL (default port 8686)
RADARR_URLNoRadarr server URL (default port 7878)
SONARR_URLNoSonarr server URL (default port 8989)
READARR_URLNoReadarr server URL (default port 8787)
PROWLARR_URLNoProwlarr server URL (default port 9696)
LIDARR_API_KEYNoLidarr API key
RADARR_API_KEYNoRadarr API key
SONARR_API_KEYNoSonarr API key
READARR_API_KEYNoReadarr API key
PROWLARR_API_KEYNoProwlarr API key

Capabilities

Features and capabilities supported by this server

CapabilityDetails
tools
{
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
sonarr_list_seriesA

List TV series tracked by Sonarr as a paged result. Default returns slim fields per series (id, title, year, monitored, tvdbId, imdbId, tmdbId, qualityProfileId, tags, path, network, status, ended, nextAiring, previousAiring, runtime, seasonFolder, statistics — statistics carries seasonCount / episodeFileCount / episodeCount / sizeOnDisk); set verbose=true for the full SeriesResource. Sonarr's upstream /series returns the entire library in one shot — paging here is server-side. For full details on one series (including all seasons), use sonarr_get_series. To find a series NOT yet tracked, use sonarr_lookup_series (TVDB metadata).

sonarr_get_seriesA

Get full details for a Sonarr series by id — overview, cast, seasons, episode counts, file paths. Drill-down companion to sonarr_list_series and sonarr_lookup_series.

sonarr_lookup_seriesA

Fuzzy search TVDB for a series to potentially add. Returns SeriesResource with tvdbId etc., suitable for sonarr_add_series. Searches TVDB's catalogue, NOT your tracked library — use sonarr_list_series / sonarr_get_series for what's already tracked.

sonarr_list_episodesA

List every episode for a Sonarr series. Returns episode ids you can drill into with sonarr_get_episode or pass to sonarr_release_search / sonarr_search_episode.

sonarr_get_episodeA

Get full details for a single Sonarr episode by ID — air date, overview, file info, monitored state, etc.

sonarr_calendarA

Get upcoming/recent episodes from Sonarr's calendar within an ISO date window. Use for 'what's airing this week?' queries. Movies live in radarr_calendar; Lidarr/Readarr/Prowlarr have no calendar surface.

sonarr_healthA

Get aggregated Sonarr health warnings (indexer down, low disk, etc.). Summary view; for actionable per-indexer failure detail (which indexers, since when, why) use prowlarr_indexer_status.

sonarr_diskspaceA

Get per-mount disk space (free/total bytes) seen by Sonarr. Useful for 'where do I have room to add this?' decisions; pair with sonarr_list_root_folders to map paths to capacity.

sonarr_list_quality_profilesA

List Sonarr quality profiles. The id is required as qualityProfileId when adding a series.

sonarr_list_root_foldersA

List Sonarr root folders (where series are stored on disk). The path is required as rootFolderPath when adding a series.

sonarr_list_tagsA

List Sonarr tags (label + id pairs). Useful for scoping queries by tag (e.g. 'show me everything tagged kids') and for setting tag ids on add/edit operations.

sonarr_queueA

Get the current Sonarr download queue, paged. Default returns the first 20 records. Bump page_size or step through pages when the queue is large.

sonarr_queue_removeA

Remove a single item from Sonarr's download queue. All four flags are exposed because the server-side defaults are not obviously safe — in particular, removeFromClient defaults to true on Sonarr's side, which deletes the file from the download client. This tool defaults remove_from_client to false; flip it explicitly if you want the file gone.

sonarr_queue_regrabA

Force Sonarr to re-grab a stuck queue item from the indexer. Useful when a download is hung or the file is corrupt. Returns the updated queue entry.

sonarr_historyA

Get recent Sonarr history (newest first). For per-resource scope use sonarr_history_series. To re-trigger a search for a wrong-grab event, use sonarr_history_mark_failed.

sonarr_history_seriesA

Get history scoped to a single series — every grab/import/upgrade/delete event. Much narrower than sonarr_history, which is server-wide and routinely runs into hundreds of thousands of records.

sonarr_history_mark_failedA

Mark a Sonarr history entry as failed. Triggers Sonarr to re-search for a replacement on the next interval. Useful when an episode imported as the wrong cut/quality/release. Returns a confirmation; no body from the *arr API.

sonarr_wanted_missingA

List episodes that are wanted but not yet downloaded. Filters to monitored items by default. Once you've identified what's missing, trigger an indexer hunt with sonarr_search_missing.

sonarr_wanted_cutoffA

List episodes downloaded below cutoff quality — upgrade candidates. Filters to monitored items by default. Items here are upgrade candidates; trigger a re-search with sonarr_search_missing (which also picks up cutoff-unmet items by default).

sonarr_search_missingA

Trigger Sonarr to search indexers for all monitored, missing episodes. Async — returns the queued CommandResource (id, status); the actual search runs in the background. Poll status with sonarr_get_command (use the returned id).

sonarr_refresh_seriesA

Trigger Sonarr to re-pull metadata from TVDB for one series (cast, episode list, artwork). Async — returns the queued CommandResource. Poll status with sonarr_get_command (use the returned id).

sonarr_search_seriesA

Trigger Sonarr to search indexers for all monitored, missing episodes of one series. Async — returns the queued CommandResource. Poll status with sonarr_get_command (use the returned id).

sonarr_search_seasonA

Trigger Sonarr to search indexers for one season of one series. Async — returns the queued CommandResource. Poll status with sonarr_get_command (use the returned id).

sonarr_search_episodeA

Trigger Sonarr to search indexers for one or more specific episodes. Async — returns the queued CommandResource. Poll status with sonarr_get_command (use the returned id).

sonarr_get_commandA

Poll the status of an async command queued by sonarr_search_*, sonarr_refresh_series, etc. Returns the current CommandResource (status: queued|started|completed|failed, exception, started/ended timestamps).

sonarr_add_seriesA

Add a new series to Sonarr by TVDB id. Internally calls /series/lookup to fetch the full series metadata, then POSTs /series with the merged body. Returns the created SeriesResource. Workflow: call sonarr_lookup_series first to get the tvdbId, sonarr_list_quality_profiles for quality_profile_id, sonarr_list_root_folders for root_folder_path. Note: search_for_missing_episodes defaults to false here — Sonarr's server-side default is true, which may immediately hit indexers; flip explicitly if you want that.

sonarr_edit_seriesA

Edit settings on an existing Sonarr series. Internally GETs the current SeriesResource, applies your changes, and PUTs the full resource back. Pass only the fields you want to change — others are preserved. WARNING: changing root_folder_path moves files on disk; watch your storage and download client.

sonarr_release_searchA

Run a live indexer search for releases of a specific series, season, or episode and return candidate ReleaseResource entries (without grabbing). Hits every enabled indexer in real time — slow and rate-limit-sensitive, so call only when the user wants to pick a release manually. Pass series_id for the whole series, season_number to scope to a season, or episode_id to scope to a single episode. At least one is required. Returned items feed sonarr_grab_release (when it ships).

sonarr_grab_releaseA

HIGH RISK. Immediately queues a download from the indexer for the given release. Pass the release object verbatim from sonarr_release_search output — Sonarr looks the release up server-side by guid+indexerId, so the cache must still be warm (re-run release_search if the grab fails with a 'not found' error). If the release was rejected by the quality profile, set should_override to true to grab anyway.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/CarlDog/servarr-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server