Integration

Sonarr integration

Sonarr is a self-hosted PVR that manages a TV series collection. The v3 REST API drives the same operations as its web UI: look series up on TVDB and add them with a quality profile and root folder, monitor or unmonitor whole seasons and individual episodes, list and delete episode files, read the calendar of upcoming airings and the wanted lists of missing or below-cutoff episodes, search indexers and push or grab a specific release, inspect and remove items from the download queue, read grab and import history, manage the blocklist, quality profiles, custom formats, root folders, tags, import lists, import-list exclusions, indexers and download clients, run manual imports and previews of file renames, queue background commands such as RefreshSeries or MissingEpisodeSearch, and read health checks, disk space, scheduled tasks and system status. Point the credential at your own Sonarr host and authenticate with the API key from Settings > General.

Ask it in chat

Say what should happen.
The workflow builds itself.

When this happens, do that in Sonarr.Built from the 124 Sonarr tools below, on the connection you add once.

What you can do with Sonarr

Each of these is one operation on one endpoint, available both as a workflow step and as a tool an AI agent can call on its own. Nothing bundles several operations into one action, so what a run did stays readable afterwards.

Most endpoints run on the free plan. A few, mainly the ones that publish on your behalf, need a paid plan.

Download client, 7 operations

  • create_download_clientCreate download clientPOSTAdds a download client to Sonarr.
  • delete_download_clientDelete download clientDELETEDeletes the download client with the given id.
  • delete_download_client_bulkDelete download client bulkDELETEDeletes several download clients in one call.
  • get_download_clientGet download clientGETReturns the download client with the given id.
  • list_download_clientsList download clientsGETLists the download clients defined in Sonarr. Each is a connection to a Usenet or torrent client that grabs are handed to.
  • update_download_clientUpdate download clientPUTUpdates the download client with the given id.
  • update_download_client_bulkUpdate download client bulkPUTApplies one change to several download clients at once.

Import list, 7 operations

  • create_import_listCreate import listPOSTAdds an import list to Sonarr.
  • delete_import_listDelete import listDELETEDeletes the import list with the given id.
  • delete_import_list_bulkDelete import list bulkDELETEDeletes several import lists in one call.
  • get_import_listGet import listGETReturns the import list with the given id.
  • list_import_listsList import listsGETLists the import lists defined in Sonarr. Each is a source that adds records to the library automatically.
  • update_import_listUpdate import listPUTUpdates the import list with the given id.
  • update_import_list_bulkUpdate import list bulkPUTApplies one change to several import lists at once.

Import list exclusion, 7 operations

  • create_import_list_exclusionCreate import list exclusionPOSTAdds an import list exclusion to Sonarr.
  • delete_import_list_exclusionDelete import list exclusionDELETEDeletes the import list exclusion with the given id.
  • delete_import_list_exclusion_bulkDelete import list exclusion bulkDELETEDeletes several import list exclusions in one call.
  • get_import_list_exclusionGet import list exclusionGETReturns the import list exclusion with the given id.
  • list_import_list_exclusionsList import list exclusionsGETLists the import list exclusions defined in Sonarr. Each names a record that import lists must never add back.
  • list_import_list_exclusions_pagedList import list exclusions pagedGETReturns a page of import list exclusions.
  • update_import_list_exclusionUpdate import list exclusionPUTUpdates the import list exclusion with the given id.

Indexer, 7 operations

  • create_indexerCreate indexerPOSTAdds an indexer to Sonarr.
  • delete_indexerDelete indexerDELETEDeletes the indexer with the given id.
  • delete_indexer_bulkDelete indexer bulkDELETEDeletes several indexers in one call.
  • get_indexerGet indexerGETReturns the indexer with the given id.
  • list_indexersList indexersGETLists the indexers defined in Sonarr. Each is a Usenet or torrent indexer that is searched for releases.
  • update_indexerUpdate indexerPUTUpdates the indexer with the given id.
  • update_indexer_bulkUpdate indexer bulkPUTApplies one change to several indexers at once.

Queue, 7 operations

  • delete_queueDelete queueDELETERemoves one item from the queue, optionally telling the download client to remove it and blocklisting its release.
  • delete_queue_bulkDelete queue bulkDELETERemoves several queue items in one call.
  • get_queue_statusGet queue statusGETReturns queue counters: total, errors, warnings and items waiting for manual intervention.
  • grab_queue_itemGrab queue itemPOSTForces Sonarr to import a queued item that is waiting rather than importing on its own.
  • grab_queue_itemsGrab queue itemsPOSTForces the import of several waiting queue items in one call.
  • list_queueList queueGETReturns a page of the download queue with per-item progress, size, status and estimated completion.
  • list_queue_detailsList queue detailsGETReturns queue entries expanded with the library records they belong to.

Episode file, 6 operations

  • delete_episode_fileDelete episode fileDELETEDeletes one episode file from disk.
  • delete_episode_file_bulkDelete episode file bulkDELETEDeletes several episode files from disk in one call.
  • get_episode_fileGet episode fileGETReturns one episode file with its quality, language, size and media info.
  • list_episode_filesList episode filesGETLists the episode files of a series, or the files given by id, with quality, language and media info.
  • update_episode_fileUpdate episode filePUTUpdates one episode file, for example its quality or language.
  • update_episode_files_editorUpdate episode files editorPUTApplies one quality or language change to several episode files given by id.

Series, 6 operations

  • create_seriesCreate seriesPOSTAdds a series to the library from a lookup result, with its quality profile, root folder, monitoring choice and season folder setting.
  • delete_seriesDelete seriesDELETERemoves a series from the library, optionally deleting its files and adding an import list exclusion.
  • delete_series_bulkDelete series bulkDELETEDeletes several series at once, optionally with their files.
  • get_seriesGet seriesGETReturns one series with its seasons, statistics and paths.
  • list_seriesList seriesGETLists the series in the library, or the single series matching a TVDB id.
  • lookup_seriesLookup seriesGETSearches TVDB by free text, or by tvdb:<id>, and returns the series that could be added.

Tag, 6 operations

  • create_tagCreate tagPOSTAdds a tag to Sonarr.
  • delete_tagDelete tagDELETEDeletes the tag with the given id.
  • get_tagGet tagGETReturns the tag with the given id.
  • get_tag_detailGet tag detailGETReturns one tag with the records, profiles and connections it is attached to.
  • list_tag_detailsList tag detailsGETLists tags together with the records, profiles and connections each one is attached to.
  • list_tagsList tagsGETLists the tags defined in Sonarr. Each is a label that can be attached to records, profiles, indexers and connections.

Custom filter, 5 operations

  • create_custom_filterCreate custom filterPOSTAdds a custom filter to Sonarr.
  • delete_custom_filterDelete custom filterDELETEDeletes the custom filter with the given id.
  • get_custom_filterGet custom filterGETReturns the custom filter with the given id.
  • list_custom_filtersList custom filtersGETLists the custom filters defined in Sonarr. Each is a saved filter definition the app's own list views use.
  • update_custom_filterUpdate custom filterPUTUpdates the custom filter with the given id.

Custom format, 5 operations

  • create_custom_formatCreate custom formatPOSTAdds a custom format to Sonarr.
  • delete_custom_formatDelete custom formatDELETEDeletes the custom format with the given id.
  • get_custom_formatGet custom formatGETReturns the custom format with the given id.
  • list_custom_formatsList custom formatsGETLists the custom formats defined in Sonarr. Each is a scoring rule matched against release names and media info.
  • update_custom_formatUpdate custom formatPUTUpdates the custom format with the given id.

Notification, 5 operations

  • create_notificationCreate notificationPOSTAdds a notification connection to Sonarr.
  • delete_notificationDelete notificationDELETEDeletes the notification connection with the given id.
  • get_notificationGet notificationGETReturns the notification connection with the given id.
  • list_notificationsList notificationsGETLists the notification connections defined in Sonarr. Each is a connect target such as Discord, Telegram, a webhook or a media server.
  • update_notificationUpdate notificationPUTUpdates the notification connection with the given id.

Quality profile, 5 operations

  • create_quality_profileCreate quality profilePOSTAdds a quality profile to Sonarr.
  • delete_quality_profileDelete quality profileDELETEDeletes the quality profile with the given id.
  • get_quality_profileGet quality profileGETReturns the quality profile with the given id.
  • list_quality_profilesList quality profilesGETLists the quality profiles defined in Sonarr. Each holds an ordered list of qualities and the cutoff at which upgrading stops.
  • update_quality_profileUpdate quality profilePUTUpdates the quality profile with the given id.

Command, 4 operations

  • cancel_commandCancel commandDELETECancels a queued or running background command.
  • get_command_statusGet command statusGETReturns the state, progress and result of one background command.
  • list_commandsList commandsGETLists the background commands queued, running or recently finished, with their progress.
  • run_commandRun commandPOSTQueues a background command by name, for example RefreshSeries, RescanSeries or MissingEpisodeSearch. Any other body field is passed to the command as one of its parameters.

Episode, 4 operations

  • get_episodeGet episodeGETReturns one episode with its air date, file and monitoring state.
  • list_episodesList episodesGETLists episodes for a series, a season or an episode file.
  • set_episodes_monitoredSet episodes monitoredPUTMonitors or unmonitors a set of episodes given by id.
  • update_episodeUpdate episodePUTUpdates one episode, in practice its monitoring state.

History, 4 operations

  • list_historyList historyGETReturns a page of grab, import, upgrade, rename and failure events, newest first.
  • list_history_sinceList history sinceGETReturns every history event recorded since a date, with no paging.
  • list_series_historyList series historyGETReturns history events for one series, optionally narrowed to a season.
  • mark_history_item_failedMark history item failedPOSTMarks a history item as failed, which blocklists its release and lets a fresh search run.

Root folder, 4 operations

  • create_root_folderCreate root folderPOSTAdds a root folder to Sonarr.
  • delete_root_folderDelete root folderDELETEDeletes the root folder with the given id.
  • get_root_folderGet root folderGETReturns the root folder with the given id.
  • list_root_foldersList root foldersGETLists the root folders defined in Sonarr. Each is a library path that new records are stored under.

Blocklist, 3 operations

  • delete_blocklistDelete blocklistDELETERemoves one release from the blocklist so it can be grabbed again.
  • delete_blocklist_bulkDelete blocklist bulkDELETERemoves several releases from the blocklist in one call.
  • list_blocklistList blocklistGETReturns a page of blocklisted releases, the ones Sonarr refuses to grab again after a failed download.

Quality definition, 3 operations

  • get_quality_definitionGet quality definitionGETReturns the quality definition with the given id.
  • list_quality_definitionsList quality definitionsGETLists the quality definitions defined in Sonarr. Each holds the minimum and maximum size accepted for one quality.
  • update_quality_definitionUpdate quality definitionPUTUpdates the quality definition with the given id.

Release, 3 operations

  • grab_releaseGrab releasePOSTSends one release from a search result to a download client.
  • push_releasePush releasePOSTPushes a release Sonarr did not find itself, so it is handled as though an indexer had returned it.
  • search_releasesSearch releasesGETRuns an indexer search and returns the releases found, each with quality, size, seeders, age and the reasons Sonarr would reject it.

Calendar, 2 operations

  • get_calendar_episodeGet calendar episodeGETReturns one calendar entry by id.
  • list_calendar_episodesList calendar episodesGETLists the episodes scheduled between two dates, as the calendar view shows them.

Cutoff unmet, 2 operations

  • get_cutoff_unmet_episodeGet cutoff unmet episodeGETReturns one below-cutoff episode by id.
  • list_cutoff_unmet_episodesList cutoff unmet episodesGETReturns a page of monitored episodes whose existing file is below the profile cutoff.

Language, 2 operations

  • get_languageGet languageGETReturns one language by id.
  • list_languagesList languagesGETLists the languages Sonarr can recognise in a release.

Missing, 2 operations

  • get_missing_episodeGet missing episodeGETReturns one monitored episode that has no file, by id.
  • list_missing_episodesList missing episodesGETReturns a page of monitored episodes that have no file yet.

Scheduled task, 2 operations

  • get_scheduled_taskGet scheduled taskGETReturns one scheduled task by id.
  • list_scheduled_tasksList scheduled tasksGETLists the scheduled tasks with their interval and their last and next run times.

Backup, 1 operation

  • list_backupsList backupsGETLists the database backups on disk.

Disk space, 1 operation

  • list_disk_spaceList disk spaceGETReports free and total space for every disk that holds a root folder.

Health check, 1 operation

  • list_health_checksList health checksGETLists the health checks currently failing, each with its source, type and message.

Indexer flag, 1 operation

  • list_indexer_flagsList indexer flagsGETLists the flags a release can carry, such as freeleech or internal.

Log file, 1 operation

  • list_log_filesList log filesGETLists the log files on disk with their size and last write time.

Log record, 1 operation

  • list_log_recordsList log recordsGETReturns a page of log records, filterable by level.

Manual import, 1 operation

  • list_manual_import_candidatesList manual import candidatesGETLists the files found under a folder together with the episode, quality and language Sonarr parsed from each, so an import can be reviewed before it runs.

Mediacover, 1 operation

  • get_series_media_coverGet series media coverGETget mediacover.

Parse, 1 operation

  • parse_release_titleParse release titleGETParses a release title and returns what Sonarr recognised in it, including the matching library record.

Rename, 1 operation

  • preview_episode_renamesPreview episode renamesGETLists the episode files whose names differ from the configured naming scheme, with the name each would be given.

System status, 1 operation

  • get_system_statusGet system statusGETReturns version, build date, runtime, operating system, configured paths and authentication mode.

Update, 1 operation

  • list_available_updatesList available updatesGETLists the Sonarr versions available to update to, newest first, with their changes.

Showing the first 120 of 124 endpoints. The rest are in the product, searchable from the workflow builder and from chat.

Use Sonarr from Claude Code, Cursor or Codex

Connect Sonarr in LiveContext, create an API key in Settings, then add the LiveContext MCP server to your client. Its Sonarr operations become tools the client can call, next to every other integration you connected.

Claude Code
claude mcp add --transport http livecontext https://livecontext.ai/mcp --header "X-API-Key: YOUR_API_KEY"
Codex (~/.codex/config.toml)
[mcp_servers.livecontext]
url = "https://livecontext.ai/mcp"

[mcp_servers.livecontext.http_headers]
"X-API-Key" = "YOUR_API_KEY"
Cursor, Claude Desktop and other JSON configs
{
  "mcpServers": {
    "livecontext": {
      "type": "http",
      "url": "https://livecontext.ai/mcp",
      "headers": {
        "X-API-Key": "YOUR_API_KEY"
      }
    }
  }
}

Set up the MCP server step by step

How to connect Sonarr

  1. Create your workspace

    Sign up free. Nothing to install.

  2. Connect Sonarr once

    Add your Sonarr connection in Settings. Every tool from this integration reuses it, and secrets are encrypted at rest and visible only to you.

  3. Describe the job in chat

    The workflow builds itself in front of you and picks the endpoints it needs. Drag the steps yourself on the canvas whenever you would rather be explicit.

Sonarr integration FAQ

What can you do with the Sonarr integration?

LiveContext exposes 124 operations on Sonarr, covering download client, import list, import list exclusion and indexer.

Popular integrations

Browse the whole catalog