radarr-mcp
This MCP server exposes Radarr’s v3 REST API as tools, enabling full read/write and destructive management of a Radarr instance.
Movies: list, fetch, add, update, delete, import, lookup by title/IMDb/TMDb; manage alternative titles, collections, credits, and extra files.
Movie files: list, update, delete, and bulk edit.
Download queue & history: list, grab, delete items; mark history failed; manage blocklist.
Configuration: read/update download client, indexer, import list, naming, media management, metadata, UI, host, and other settings.
Customization: manage custom formats, filters, delay profiles, quality profiles, release profiles, auto-tagging, and tags.
Indexers & import lists: create, list, update, delete, test, run actions, and manage exclusions.
System: view status, health, logs, disk space, backups; restart/shutdown; browse filesystem.
Commands & calendar: run commands (refresh, search, scan); view calendar, wanted missing/cutoff.
Destructive operations: delete movies, movie files, queue items, blocklist entries, custom formats, tags, etc., including bulk deletes.
Provides tools for managing a Radarr instance, including movies, movie files, the download queue, history, indexers, import lists, custom formats, tags, commands, and system status.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@radarr-mcp Search for the movie Dune and add the first result"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
radarr-mcp
Part of the arr-mcps collection. MCP server exposing Radarr's v3 REST API (OpenAPI 3.0.4) as tools, so an LLM can read and manage a Radarr instance: movies, movie files, the download queue, history, indexers, import lists, custom formats, tags, commands, system status, and more. Full surface — reads and writes, with destructive tools flagged.
Built with FastMCP.
Getting an API key
Generate one in Radarr Settings > General > Security. Auth is the
X-Api-Key header.
Related MCP server: mcp-arrstack
Install
Download a wheel from the latest release
and install it as a uv tool (no repo checkout needed):
uv tool install radarr_mcp-*.whlThis puts a radarr-mcp command on your PATH. Register it with Claude Code:
claude mcp add radarr \
--env RADARR_URL=http://your-radarr-host:7878 \
--env RADARR_API_KEY=<key> \
-- radarr-mcpFrom source
uv sync
cp .env.example .env # fill in RADARR_URL and RADARR_API_KEYclaude mcp add radarr \
--env RADARR_URL=http://your-radarr-host:7878 \
--env RADARR_API_KEY=<key> \
-- uv run --directory /path/to/radarr-mcp radarr-mcpConfig
Env var | Required | Default |
| yes | - |
| yes* | none (no |
* Every API endpoint requires auth; practically you must set it, but the server still starts without one so errors surface from the API rather than at startup.
Tools
15 resource-scoped tools, each covering multiple Radarr v3 endpoints (226
total) via an operation parameter. Call a tool with operation set to one
of its listed operations and an arguments dict matching that operation's
parameters — the tool's own description (visible to your MCP client) lists
every operation, its signature, and a one-line doc. This keeps the full REST
surface available while costing a fraction of the context budget of
registering all 226 endpoints as separate tools.
Tool | Operations | Kind |
| 43 | reads + writes |
| 32 | reads + writes |
| 28 | reads + writes |
| 21 | reads + writes |
| 20 | reads + writes |
| 18 | reads + writes |
| 16 | reads + writes |
| 11 | reads + writes |
| 8 | reads + writes |
| 8 | reads + writes |
| 7 | reads + writes |
| 7 | reads + writes |
| 4 | reads + writes |
| 2 | read-only |
| 1 | read-only |
Example: radarr_queue(operation="radarr_delete_queue", arguments={"id": 42}).
Endpoint-level naming (radarr_<verb>_<resource>) is preserved as the
operation value, so the full endpoint list is still discoverable from each
group tool's description at runtime.
Development
make help # list all commandsCommand | Does |
|
|
| Offline tests - one per endpoint, mocked HTTP |
| Tests against the live instance (needs |
| Build wheel + sdist into |
| Bump the version in |
| Remove build artifacts |
The release workflow (.github/workflows/release.yml) builds and publishes to
Releases whenever a v*
tag is pushed - so the usual flow is make bump-patch, commit, then tag and
push.
The integration suite is read-only by default (GET endpoints only). Set
RADARR_WRITE_TESTS=1 to also exercise POST/PUT/DELETE against a scratch tag
(created, updated, then deleted). Never run write tests against a production
library.
Available Tools
226 toolsradarr_action_downloadclientC
Run an action on a action (name selects the action). WRITE: this modifies your Radarr instance.
Inputs: name (required), body. Returns: result
radarr_action_importlistD
Run an action on a action (name selects the action). WRITE: this modifies your Radarr instance.
Inputs: name (required), body. Returns: result
radarr_action_indexerD
Run an action on a action (name selects the action). WRITE: this modifies your Radarr instance.
Inputs: name (required), body. Returns: result
radarr_action_metadataC
Run an action on a action (name selects the action). WRITE: this modifies your Radarr instance.
Inputs: name (required), body. Returns: result
radarr_action_notificationC
Run an action on a action (name selects the action). WRITE: this modifies your Radarr instance.
Inputs: name (required), body. Returns: result
radarr_add_movieB
Add a movie to Radarr (body is a MovieResource). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_create_exclusionsC
Create multiple import list exclusions. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_delete_blocklistBDestructive
Bulk delete blocklisted releases. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_customformatBDestructive
Bulk delete custom formats. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_downloadclientCDestructive
Bulk delete downloadclient. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_exclusionsCDestructive
Bulk delete import list exclusions. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_importlistCDestructive
Bulk delete import lists. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_indexerCDestructive
Bulk delete indexers. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_movieCDestructive
Bulk delete movies. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_moviefileBDestructive
Bulk delete movie files. DESTRUCTIVE: this deletes data.
Inputs: body. Returns: result
radarr_bulk_delete_queueCDestructive
Bulk delete download client queue items. DESTRUCTIVE: this deletes data.
Inputs: body, blocklist, change_category, skip_redownload, +1 more. Returns: result
radarr_bulk_edit_moviefilesC
Bulk update movie files. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_customformatC
Bulk update custom formats. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_downloadclientC
Bulk update downloadclient. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_importlistB
Bulk update import lists. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_indexerC
Bulk update indexers. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_movieB
Bulk update movies. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_bulk_update_moviefileC
Bulk update movie files. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_commit_manual_importA
Commit a manual import (body is a list of manual import items). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_autotaggingB
Create auto tagging rules. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_customfilterB
Create custom filters. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_customformatB
Create custom formats. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_delayprofileC
Create delay profiles. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_downloadclientC
Create downloadclient. WRITE: this modifies your Radarr instance.
Inputs: body, force_save. Returns: result
radarr_create_exclusionsC
Create import list exclusions. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_importlistB
Create import lists. WRITE: this modifies your Radarr instance.
Inputs: body, force_save. Returns: result
radarr_create_indexerB
Create indexers. WRITE: this modifies your Radarr instance.
Inputs: body, force_save. Returns: result
radarr_create_metadataC
Create metadata providers. WRITE: this modifies your Radarr instance.
Inputs: body, force_save. Returns: result
radarr_create_notificationA
Create notification providers. WRITE: this modifies your Radarr instance.
Inputs: body, force_save. Returns: result
radarr_create_qualityprofileB
Create quality profiles. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_releaseprofileC
Create release profiles. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_remotepathmappingB
Create remote path mappings. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_rootfolderB
Create root folders. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_create_tagC
Create tags. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_delete_autotaggingCDestructive
Delete auto tagging rules. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_blocklistBDestructive
Delete blocklisted releases. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_commandBDestructive
Delete queued/running commands. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_customfilterADestructive
Delete custom filters. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_customformatCDestructive
Delete custom formats. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_delayprofileBDestructive
Delete delay profiles. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_downloadclientCDestructive
Delete downloadclient. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_exclusionsCDestructive
Delete import list exclusions. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_importlistCDestructive
Delete import lists. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_indexerCDestructive
Delete indexers. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_metadataBDestructive
Delete metadata providers. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_movieCDestructive
Delete movies. DESTRUCTIVE: this deletes data.
Inputs: id (required), delete_files, add_import_exclusion. Returns: result
radarr_delete_moviefileBDestructive
Delete movie files. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_notificationBDestructive
Delete notification providers. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_qualityprofileCDestructive
Delete quality profiles. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_queueBDestructive
Delete download client queue items. DESTRUCTIVE: this deletes data.
Inputs: id (required), blocklist, change_category, skip_redownload, +1 more. Returns: result
radarr_delete_releaseprofileBDestructive
Delete release profiles. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_remotepathmappingBDestructive
Delete remote path mappings. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_rootfolderADestructive
Delete root folders. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_system_backupCDestructive
Delete backup. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_delete_tagADestructive
Delete tags. DESTRUCTIVE: this deletes data.
Inputs: id (required). Returns: result
radarr_get_alttitleARead-only
Fetch a single alternative movie titles by id.
Inputs: id (required). Returns: result
radarr_get_autotaggingARead-only
Fetch a single auto tagging rules by id.
Inputs: id (required). Returns: result
radarr_get_autotagging_schemaARead-only
Return the auto tagging rules schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_collectionBRead-only
Fetch a single movie collections by id.
Inputs: id (required). Returns: result
radarr_get_commandARead-only
Fetch a single queued/running commands by id.
Inputs: id (required). Returns: result
radarr_get_config_downloadclientCRead-only
List downloadclient.
Inputs: no named parameters. Returns: result
radarr_get_config_downloadclient_by_idCRead-only
Fetch a single downloadclient by id.
Inputs: id (required). Returns: result
radarr_get_config_hostCRead-only
List host.
Inputs: no named parameters. Returns: result
radarr_get_config_host_by_idBRead-only
Fetch a single host by id.
Inputs: id (required). Returns: result
radarr_get_config_importlistDRead-only
List import lists.
Inputs: no named parameters. Returns: result
radarr_get_config_importlist_by_idBRead-only
Fetch a single import lists by id.
Inputs: id (required). Returns: result
radarr_get_config_indexerBRead-only
List indexers.
Inputs: no named parameters. Returns: result
radarr_get_config_indexer_by_idCRead-only
Fetch a single indexers by id.
Inputs: id (required). Returns: result
radarr_get_config_mediamanagementCRead-only
List mediamanagement.
Inputs: no named parameters. Returns: result
radarr_get_config_mediamanagement_by_idBRead-only
Fetch a single mediamanagement by id.
Inputs: id (required). Returns: result
radarr_get_config_metadataARead-only
List metadata providers.
Inputs: no named parameters. Returns: result
radarr_get_config_metadata_by_idCRead-only
Fetch a single metadata providers by id.
Inputs: id (required). Returns: result
radarr_get_config_namingCRead-only
List naming.
Inputs: no named parameters. Returns: result
radarr_get_config_naming_by_idCRead-only
Fetch a single naming by id.
Inputs: id (required). Returns: result
radarr_get_config_uiCRead-only
List ui.
Inputs: no named parameters. Returns: result
radarr_get_config_ui_by_idBRead-only
Fetch a single ui by id.
Inputs: id (required). Returns: result
radarr_get_creditARead-only
Fetch a single movie credits (cast/crew) by id.
Inputs: id (required). Returns: result
radarr_get_customfilterBRead-only
Fetch a single custom filters by id.
Inputs: id (required). Returns: result
radarr_get_customformatARead-only
Fetch a single custom formats by id.
Inputs: id (required). Returns: result
radarr_get_customformat_schemaARead-only
Return the custom formats schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_delayprofileARead-only
Fetch a single delay profiles by id.
Inputs: id (required). Returns: result
radarr_get_diskspaceBRead-only
List diskspace.
Inputs: no named parameters. Returns: result
radarr_get_downloadclientARead-only
Fetch a single downloadclient by id.
Inputs: id (required). Returns: result
radarr_get_downloadclient_schemaARead-only
Return the downloadclient schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_exclusionsARead-only
Fetch a single import list exclusions by id.
Inputs: id (required). Returns: result
radarr_get_healthBRead-only
List health.
Inputs: no named parameters. Returns: result
radarr_get_importlistARead-only
Fetch a single import lists by id.
Inputs: id (required). Returns: result
radarr_get_importlist_schemaARead-only
Return the import lists schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_indexerARead-only
Fetch a single indexers by id.
Inputs: id (required). Returns: result
radarr_get_indexerflagARead-only
List indexer flags.
Inputs: no named parameters. Returns: result
radarr_get_indexer_schemaARead-only
Return the indexers schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_languageARead-only
Fetch a single languages by id.
Inputs: id (required). Returns: result
radarr_get_localization_languageBRead-only
List languages.
Inputs: no named parameters. Returns: result
radarr_get_metadataARead-only
Fetch a single metadata providers by id.
Inputs: id (required). Returns: result
radarr_get_metadata_schemaARead-only
Return the metadata providers schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_movieARead-only
Fetch a single movies by id.
Inputs: id (required). Returns: result
radarr_get_moviefileCRead-only
Fetch a single movie files by id.
Inputs: id (required). Returns: result
radarr_get_movie_folderCRead-only
Fetch a single folder by id.
Inputs: id (required). Returns: result
radarr_get_notificationARead-only
Fetch a single notification providers by id.
Inputs: id (required). Returns: result
radarr_get_notification_schemaARead-only
Return the notification providers schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_parseARead-only
List title parsing results. Query params: title.
Inputs: title. Returns: result
radarr_get_qualitydefinitionARead-only
Fetch a single quality definitions by id.
Inputs: id (required). Returns: result
radarr_get_qualitydefinition_limitsCRead-only
List quality definitions.
Inputs: no named parameters. Returns: result
radarr_get_qualityprofileARead-only
Fetch a single quality profiles by id.
Inputs: id (required). Returns: result
radarr_get_qualityprofile_schemaARead-only
Return the quality profiles schema (available fields/options).
Inputs: no named parameters. Returns: result
radarr_get_queue_detailsCRead-only
List download client queue items. Query params: movie_id.
Inputs: movie_id, include_movie. Returns: result
radarr_get_queue_statusBRead-only
List download client queue items.
Inputs: no named parameters. Returns: result
radarr_get_releaseprofileARead-only
Fetch a single release profiles by id.
Inputs: id (required). Returns: result
radarr_get_remotepathmappingARead-only
Fetch a single remote path mappings by id.
Inputs: id (required). Returns: result
radarr_get_renameCRead-only
List rename. Query params: movie_id.
Inputs: movie_id. Returns: result
radarr_get_rootfolderARead-only
Fetch a single root folders by id.
Inputs: id (required). Returns: result
radarr_get_system_routesCRead-only
List routes.
Inputs: no named parameters. Returns: result
radarr_get_system_routes_duplicateARead-only
List duplicate registered API routes.
Inputs: no named parameters. Returns: result
radarr_get_system_statusCRead-only
List system.
Inputs: no named parameters. Returns: result
radarr_get_system_taskCRead-only
List task.
Inputs: no named parameters. Returns: result
radarr_get_system_task_by_idARead-only
Fetch a single task by id.
Inputs: id (required). Returns: result
radarr_get_tagBRead-only
Fetch a single tags by id.
Inputs: id (required). Returns: result
radarr_get_tag_detailCRead-only
Fetch a single detail by id.
Inputs: id (required). Returns: result
radarr_grab_queue_bulkC
Grab the queued item now (forces the download client to fetch it). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_grab_queue_itemB
Grab the queued item now (forces the download client to fetch it). WRITE: this modifies your Radarr instance.
Inputs: id (required). Returns: result
radarr_import_list_movieC
Import movies from an import list. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_import_movieC
Import movies (body is a list of movie resources). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_list_alttitleBRead-only
List alternative movie titles. Query params: movie_id, movie_metadata_id.
Inputs: movie_id, movie_metadata_id. Returns: result
radarr_list_autotaggingARead-only
List auto tagging rules.
Inputs: no named parameters. Returns: result
radarr_list_blocklistBRead-only
List blocklisted releases. Query params: sort_key, sort_direction, movie_ids, protocols.
Inputs: page, sort_key, movie_ids, page_size, +2 more. Returns: result
radarr_list_blocklist_movieCRead-only
List movies. Query params: movie_id.
Inputs: movie_id. Returns: result
radarr_list_calendarBRead-only
List upcoming release calendar. Query params: start, end, tags.
Inputs: end, tags, start, unmonitored. Returns: result
radarr_list_collectionCRead-only
List movie collections. Query params: tmdb_id.
Inputs: tmdb_id. Returns: result
radarr_list_commandARead-only
List queued/running commands.
Inputs: no named parameters. Returns: result
radarr_list_config_naming_examplesDRead-only
List examples. Query params: rename_movies, replace_illegal_characters, colon_replacement_format, standard_movie_format, movie_folder_format, id, resource_name.
Inputs: id, rename_movies, resource_name, movie_folder_format, +3 more. Returns: result
radarr_list_creditARead-only
List movie credits (cast/crew). Query params: movie_id, movie_metadata_id.
Inputs: movie_id, movie_metadata_id. Returns: result
radarr_list_customfilterBRead-only
List custom filters.
Inputs: no named parameters. Returns: result
radarr_list_customformatARead-only
List custom formats.
Inputs: no named parameters. Returns: result
radarr_list_delayprofileBRead-only
List delay profiles.
Inputs: no named parameters. Returns: result
radarr_list_downloadclientBRead-only
List downloadclient.
Inputs: no named parameters. Returns: result
radarr_list_exclusionsBRead-only
List import list exclusions.
Inputs: no named parameters. Returns: result
radarr_list_exclusions_pagedCRead-only
List import list exclusions. Query params: sort_key, sort_direction.
Inputs: page, sort_key, page_size, sort_direction. Returns: result
radarr_list_extrafileCRead-only
List extrafile. Query params: movie_id.
Inputs: movie_id. Returns: result
radarr_list_filesystemBRead-only
List server filesystem. Query params: path.
Inputs: path, include_files, allow_folders_without_trailing_slashes. Returns: result
radarr_list_filesystem_mediafilesCRead-only
List mediafiles. Query params: path.
Inputs: path. Returns: result
radarr_list_filesystem_typeDRead-only
List type. Query params: path.
Inputs: path. Returns: result
radarr_list_historyCRead-only
List download/import history. Query params: sort_key, sort_direction, include_movie, event_type, download_id, movie_ids, languages, quality.
Inputs: page, quality, sort_key, languages, +6 more. Returns: result
radarr_list_history_movieCRead-only
List movies. Query params: movie_id, event_type.
Inputs: movie_id, event_type, include_movie. Returns: result
radarr_list_history_sinceDRead-only
List since. Query params: date, event_type.
Inputs: date, event_type, include_movie. Returns: result
radarr_list_importlistARead-only
List import lists.
Inputs: no named parameters. Returns: result
radarr_list_importlist_movieCRead-only
List movies.
Inputs: include_popular, include_trending, include_recommendations. Returns: result
radarr_list_indexerCRead-only
List indexers.
Inputs: no named parameters. Returns: result
radarr_list_languageARead-only
List languages.
Inputs: no named parameters. Returns: result
radarr_list_localizationBRead-only
List localization strings.
Inputs: no named parameters. Returns: result
radarr_list_logBRead-only
List server logs. Query params: sort_key, sort_direction, level.
Inputs: page, level, sort_key, page_size, +1 more. Returns: result
radarr_list_log_fileCRead-only
List file.
Inputs: no named parameters. Returns: result
radarr_list_log_file_updateCRead-only
List file log files.
Inputs: no named parameters. Returns: result
radarr_list_manualimportBRead-only
List manual import candidates. Query params: folder, download_id, movie_id.
Inputs: folder, movie_id, download_id, filter_existing_files. Returns: result
radarr_list_metadataARead-only
List metadata providers.
Inputs: no named parameters. Returns: result
radarr_list_movieCRead-only
List movies. Query params: tmdb_id, language_id.
Inputs: tmdb_id, language_id, exclude_local_covers. Returns: result
radarr_list_moviefileBRead-only
List movie files. Query params: movie_id, movie_file_ids.
Inputs: movie_id, movie_file_ids. Returns: result
radarr_list_notificationARead-only
List notification providers.
Inputs: no named parameters. Returns: result
radarr_list_qualitydefinitionARead-only
List quality definitions.
Inputs: no named parameters. Returns: result
radarr_list_qualityprofileARead-only
List quality profiles.
Inputs: no named parameters. Returns: result
radarr_list_queueCRead-only
List download client queue items. Query params: sort_key, sort_direction, movie_ids, protocol, languages, quality, status.
Inputs: page, status, quality, protocol, +7 more. Returns: result
radarr_list_releaseCRead-only
List release search results. Query params: movie_id.
Inputs: movie_id. Returns: result
radarr_list_releaseprofileBRead-only
List release profiles.
Inputs: no named parameters. Returns: result
radarr_list_remotepathmappingARead-only
List remote path mappings.
Inputs: no named parameters. Returns: result
radarr_list_rootfolderARead-only
List root folders.
Inputs: no named parameters. Returns: result
radarr_list_system_backupBRead-only
List backup.
Inputs: no named parameters. Returns: result
radarr_list_tagBRead-only
List tags.
Inputs: no named parameters. Returns: result
radarr_list_tag_detailDRead-only
List detail.
Inputs: no named parameters. Returns: result
radarr_list_updateARead-only
List available updates.
Inputs: no named parameters. Returns: result
radarr_list_wanted_cutoffDRead-only
List cutoff. Query params: sort_key, sort_direction.
Inputs: page, sort_key, monitored, page_size, +1 more. Returns: result
radarr_list_wanted_missingDRead-only
List missing. Query params: sort_key, sort_direction.
Inputs: page, sort_key, monitored, page_size, +1 more. Returns: result
radarr_lookup_movieDRead-only
List lookup. Query params: term.
Inputs: term. Returns: result
radarr_lookup_movie_by_imdb_idDRead-only
List imdb matching a search term. Query params: imdb_id.
Inputs: imdb_id. Returns: result
radarr_lookup_movie_by_tmdb_idDRead-only
List tmdb matching a search term. Query params: tmdb_id.
Inputs: tmdb_id. Returns: result
radarr_mark_history_item_failedA
Mark a history item as failed (blocklists the release by default). WRITE: this modifies your Radarr instance.
Inputs: id (required). Returns: result
radarr_pingARead-only
Ping the server to verify it is reachable and authenticated.
Inputs: no named parameters. Returns: result
radarr_push_releaseB
Push a release to the download client. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_reorder_delayprofileA
Reorder delay profiles after another entry. Query params: after. WRITE: this modifies your Radarr instance.
Inputs: id (required), after. Returns: result
radarr_restart_radarrA
Restart the Radarr service. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_restore_backupC
Restore Radarr from a backup. WRITE: this modifies your Radarr instance.
Inputs: id (required). Returns: result
radarr_restore_backup_uploadA
Restore Radarr from an uploaded backup file (multipart upload - limited support). WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_run_commandA
Run a Radarr command (body is a CommandResource with a name, e.g. RefreshMovie, MoviesSearch, DownloadedMoviesScan). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_search_releasesB
Search for releases for a movie (body carries movieId and other options). WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_shutdown_radarrA
Shut down the Radarr service. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_all_downloadclientC
Test testall (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_all_importlistC
Test testall (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_all_indexerB
Test testall (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_all_metadataC
Test testall (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_all_notificationC
Test testall (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: no named parameters. Returns: result
radarr_test_downloadclientC
Test test (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: body, force_test. Returns: result
radarr_test_importlistC
Test test (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: body, force_test. Returns: result
radarr_test_indexerC
Test test (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: body, force_test. Returns: result
radarr_test_metadataC
Test test (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: body, force_test. Returns: result
radarr_test_notificationC
Test test (optionally force_test). Returns validation results. WRITE: this modifies your Radarr instance.
Inputs: body, force_test. Returns: result
radarr_update_autotaggingB
Update auto tagging rules. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_collectionC
Update movie collections. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_collectionsC
Update movie collections. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_update_config_downloadclientC
Update downloadclient. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_hostB
Update host. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_importlistC
Update import lists. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_indexerC
Update indexers. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_mediamanagementC
Update mediamanagement. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_metadataC
Update metadata providers. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_namingC
Update naming. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_config_uiC
Update ui. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_customfilterB
Update custom filters. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_customformatC
Update custom formats. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_delayprofileA
Update delay profiles. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_downloadclientC
Update downloadclient. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, force_save. Returns: result
radarr_update_exclusionsB
Update import list exclusions. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_importlistB
Update import lists. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, force_save. Returns: result
radarr_update_indexerC
Update indexers. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, force_save. Returns: result
radarr_update_metadataC
Update metadata providers. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, force_save. Returns: result
radarr_update_movieC
Update movies. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, move_files. Returns: result
radarr_update_moviefileC
Update movie files. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_notificationC
Update notification providers. WRITE: this modifies your Radarr instance.
Inputs: id (required), body, force_save. Returns: result
radarr_update_qualitydefinitionC
Update quality definitions. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_quality_definitionsC
Update quality definitions. WRITE: this modifies your Radarr instance.
Inputs: body. Returns: result
radarr_update_qualityprofileC
Update quality profiles. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_releaseprofileC
Update release profiles. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_remotepathmappingB
Update remote path mappings. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
radarr_update_tagC
Update tags. WRITE: this modifies your Radarr instance.
Inputs: id (required), body. Returns: result
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 226 tools
Many tools follow a clear resource+action pattern, but there are several ambiguous groups (e.g., radarr_list_queue vs radarr_get_queue_details vs radarr_get_queue_status, and radarr_bulk_edit_moviefiles vs radarr_bulk_update_moviefile). The sheer number of similar resource-specific list/get tools for different contexts (movies, history, blocklist, importlist) could cause misselection.
The dominant pattern is radarr_<verb>_<resource>, but there are deviations: 'action' is a vague verb, 'test_all' is inconsistent with plain 'test', and resource naming varies ('importlist' vs 'import_list', 'moviefile' vs 'moviefiles'). While readable, the inconsistencies could be more standardized.
With 226 tools, this server is massively over-scoped. Even a complex application like Radarr does not need this many discrete operations. The tool count drowns an agent in choices and is far beyond the typical 3-15 well-scoped range.
The tool surface is exhaustively complete, covering full CRUD/lifecycle for all major resources (movies, quality profiles, download clients, indexers, notifications, etc.) plus auxiliary operations like backup, system, and command execution. There are no obvious gaps for the domain.
Maintenance
Related MCP Connectors
Nifty's MCP server — exposes tasks, projects, messages, and files as tools for AI agents.
MCP server for Pentest-Tools.com: run scans, manage findings and reports via your preffered LLM.
MCP server exposing the Backtest360 engine API as tools for AI agents.
An MCP server that provides an API to LLMs to manage their JumpCloud resources.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceA Model Context Protocol server that exposes Sonarr, Radarr, Lidarr, and Jellyfin to any MCP client through a curated tool layer for LLM consumption.31 PyPIMIT
- AlicenseNot gradedqualityDmaintenanceMCP server that enables local LLMs to manage a home media stack including Radarr, Sonarr, Prowlarr, and others.MIT

profilarr-mcpofficial
AlicenseAqualityCmaintenanceMCP server exposing Profilarr's v1 REST API as tools, enabling an LLM to inspect and manage linked databases, connected Radarr/Sonarr instances, backups, jobs, announcements, and system status.20MIT- AlicenseBqualityCmaintenanceMCP server exposing Seerr's full v1 REST API as tools, enabling LLMs to search and discover media, manage requests and approvals, users, issues, watchlists, and integration settings for Plex/Jellyfin/Emby and Sonarr/Radarr, including reads and writes with destructive operations flagged.151MIT