关于 Sonarr MCP Server
Sonarr MCP Server 将 MCP 客户端连接到 Sonarr,提供查询剧集、查看活动和添加剧集的工具,兼有只读与写入操作。
主要功能
- 01搜索电视剧
- 02查找剧集分集
- 03查看日志和下载历史
- 04列出即将播出的分集
- 05添加电视剧
- 06读取剧集与分集资源
适用场景
- 01搜索电视剧并查看分集
- 02检查近期下载或即将播出的分集
- 03向 Sonarr 添加电视剧
- 04获取质量配置文件和定义
MCP 相关
向 MCP 客户端提供 Sonarr 搜索、分集、日志、下载、日历和剧集管理工具,以及剧集、分集和质量配置文件资源。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
6收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| tags | array | 否 | 可选标签 ID |
| title | string | 是 | 要添加的节目的标题 |
| tvdbId | integer | 是 | 要添加的节目的 TVDB ID |
| monitored | boolean | 否 | 该剧集是否受监控 |
| addOptions | object | 否 | |
| addOptions.searchForMissingEpisodes | boolean | 否 | |
| seasonFolder | boolean | 否 | 是否使用季文件夹 |
| rootFolderPath | string | 否 | Sonarr 存储剧集的文件夹 |
| qualityProfileId | integer | 否 | 要使用的 Sonarr 质量配置文件 ID |
| languageProfileId | integer | 否 | 可选语言配置文件 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
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。