mcpField
S
Sonarr MCP Server

Sonarr MCP Server

本地服务
github.com/jbydeley游戏娱乐226 周前更新

关于 Sonarr MCP Server

Sonarr MCP Server 将 MCP 客户端连接到 Sonarr,提供查询剧集、查看活动和添加剧集的工具,兼有只读与写入操作。

主要功能

  1. 01搜索电视剧
  2. 02查找剧集分集
  3. 03查看日志和下载历史
  4. 04列出即将播出的分集
  5. 05添加电视剧
  6. 06读取剧集与分集资源

适用场景

  1. 01搜索电视剧并查看分集
  2. 02检查近期下载或即将播出的分集
  3. 03向 Sonarr 添加电视剧
  4. 04获取质量配置文件和定义

MCP 相关

向 MCP 客户端提供 Sonarr 搜索、分集、日志、下载、日历和剧集管理工具,以及剧集、分集和质量配置文件资源。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"sonarr": {
"command": "npx",
"args": [
"-y",
"sonarr-mcp"
],
"env": {
"SONARR_URL": "<SONARR_URL>",
"SONARR_API_KEY": "<SONARR_API_KEY>"
}
}
}
}
启动命令npx -y sonarr-mcp
需要配置的环境变量
SONARR_URL
SONARR_API_KEY密钥

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmsonarr-mcp

工具

6

收录的工具列表 · 更新于 3 周前

参数类型必填说明
tagsarray否可选标签 ID
titlestring是要添加的节目的标题
tvdbIdinteger是要添加的节目的 TVDB ID
monitoredboolean否该剧集是否受监控
addOptionsobject否
addOptions.searchForMissingEpisodesboolean否
seasonFolderboolean否是否使用季文件夹
rootFolderPathstring否Sonarr 存储剧集的文件夹
qualityProfileIdinteger否要使用的 Sonarr 质量配置文件 ID
languageProfileIdinteger否可选语言配置文件 ID

详细介绍

Sonarr MCP 服务

这是一个用于访问 Sonarr 的 Model Context Protocol(MCP)服务。它提供了一组可通过编程方式与 Sonarr 交互的工具。

前置条件

  • Node.js >= 20
  • 正在运行的 Sonarr 实例(v3 或 v4)
  • 你的 Sonarr API 密钥(可在 Sonarr 界面的 Settings > General > API Key 下找到)

工具

以下工具可用:

工具描述只读
search-series根据搜索词搜索电视剧是
find-episodes查找电视剧的剧集是
get-logs获取 Sonarr 的分页日志是
list-recent-downloads列出最近的下载历史记录是
list-upcoming-episodes列出日历中的即将播出的剧集是
add-series将电视剧添加到 Sonarr否
工具调用示例

搜索电视剧:

{ "term": "Severance" }

查找剧集:

{ "seriesId": 123, "seasonNumber": 1 }

添加电视剧:

{
  "title": "Severance",
  "tvdbId": 371980,
  "qualityProfileId": 1,
  "rootFolderPath": "/tv"
}

资源

以下资源可用:

  • sonarr://series/{id} - 按 ID 获取特定电视剧的信息
  • sonarr://episode/{id} - 按 ID 获取特定剧集的信息
  • sonarr://quality-profile - 列出 Sonarr 中配置的质量配置文件
  • sonarr://quality-definition - 列出 Sonarr 使用的质量定义

配置

创建 .env 文件或设置环境变量:

SONARR_URL=http://localhost:8989
SONARR_API_KEY=your-api-key-here

使用方法

配合 Claude Desktop / MCP 客户端使用

将此服务添加到你的 MCP 配置中:

{
  "mcpServers": {
    "sonarr": {
      "command": "npx",
      "args": ["-y", "sonarr-mcp"],
      "env": {
        "SONARR_URL": "http://localhost:8989",
        "SONARR_API_KEY": "<your-sonarr-api-key>"
      }
    }
  }
}
本地开发
npm install
npm run build
npm run test
npm run lint

使用 stdio 传输在本地运行:

SONARR_URL=http://localhost:8989 SONARR_API_KEY=xxx npm start

安全

  • 请妥善保管 SONARR_API_KEY。将其视为密码。
  • 不要提交包含 API 密钥的 .env 文件。
  • 此服务通过 HTTP(S) 与 Sonarr 通信。向外部开放 Sonarr 时请使用 HTTPS。

故障排除

问题可能原因解决方案
“fetch failed”或连接错误SONARR_URL 错误验证 URL,并确认 Sonarr 正在运行
“Sonarr HTTP 401”API 密钥无效检查 Sonarr 设置中的 API 密钥
“Invalid environment variables”缺少必需的环境变量设置 SONARR_URL 和 SONARR_API_KEY

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。