mcpField
S
sonarr

sonarr

github.com/jmagar其他8751 次安装29 周前更新
代码仓库

关于 sonarr

用于管理 Sonarr 电视节目库的 skill,面向需要查询和维护剧集的用户。它支持搜索、添加、删除及查看质量配置,并可选择添加后立即搜索剧集。

主要功能

  1. 01按名称搜索电视节目
  2. 02添加节目并设置搜索选项
  3. 03检查节目是否已在库中
  4. 04删除节目并可选删除文件
  5. 05查看质量配置和根目录

适用场景

  1. 01将搜索到的节目添加到 Sonarr
  2. 02确认某部剧是否已在节目库
  3. 03移除节目并选择是否删除文件
  4. 04查看可用的质量配置和根目录

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/jmagar/claude-homelab --skill sonarr

安装后在 Claude Code 中输入/sonarr确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

load-env.sh
README.md
references/
api-endpoints.md
quick-reference.md
troubleshooting.md
scripts/
sonarr.sh

详细介绍

Sonarr 电视剧管理技能

⚠️ 必须调用此技能 ⚠️

当用户提及以下任一触发内容时,你必须调用此技能(不可选):

  • “添加电视剧”“搜索 Sonarr”“查找剧集”“添加到 Sonarr”
  • “移除电视剧”“删除电视剧”“检查电视剧是否存在”
  • “Sonarr 媒体库”“电视剧管理”“添加电视剧”
  • 提及 Sonarr 或管理电视剧

触发上述内容时未调用此技能,即违反操作要求。

搜索电视剧并将其添加到 Sonarr 媒体库,支持监控选项、质量配置文件和添加时搜索。

用途

此技能可用于管理 Sonarr 电视剧媒体库:

  • 按名称搜索电视剧
  • 使用可配置选项将电视剧添加到媒体库
  • 检查电视剧是否已存在
  • 移除电视剧(可选择删除文件)
  • 查看质量配置文件和根文件夹

操作包括读取和写入。移除电视剧并删除文件前,务必先确认。

设置

将凭据添加到 .env 文件:~/.claude-homelab/.env

SONARR_URL="http://localhost:8989"
SONARR_API_KEY="<your_api_key>"
SONARR_DEFAULT_QUALITY_PROFILE="1"  # Optional: defaults to 1 if not set

配置变量:

  • SONARR_URL:Sonarr 服务 URL(末尾不要加斜杠)
  • SONARR_API_KEY:Sonarr API 密钥(位于 Settings → General → API Key)
  • SONARR_DEFAULT_QUALITY_PROFILE:质量配置文件 ID(可选,默认值为 1)

命令

所有命令均返回 JSON 输出。

搜索电视剧
bash scripts/sonarr.sh search "Breaking Bad"
bash scripts/sonarr.sh search "The Office"

**输出:**带有 TVDB ID、标题、年份和简介的编号列表。

检查电视剧是否存在
bash scripts/sonarr.sh exists <tvdbId>

**输出:**指示电视剧是否在媒体库中的布尔值。

添加电视剧
bash scripts/sonarr.sh add <tvdbId>              # Searches immediately (default)
bash scripts/sonarr.sh add <tvdbId> --no-search  # Add without searching
移除电视剧
bash scripts/sonarr.sh remove <tvdbId>                # Keep files
bash scripts/sonarr.sh remove <tvdbId> --delete-files # Delete files too

**重要提示:**移除电视剧时,务必询问用户是否要删除文件!

获取配置
bash scripts/sonarr.sh config

**输出:**可用的根文件夹和质量配置文件及其 ID。

工作流

用户询问电视剧相关内容时:

  1. “将 Breaking Bad 添加到 Sonarr” → 运行 search "Breaking Bad",展示搜索结果和 TVDB 链接,然后运行 add <tvdbId>
  2. “The Office 在我的媒体库里吗?” → 运行 exists <tvdbId>
  3. “移除 Game of Thrones” → 询问是否删除文件,然后使用适当的标记运行 remove <tvdbId>
  4. “我有哪些质量配置文件?” → 运行 config
展示搜索结果

展示搜索结果时,务必包含 TVDB 链接:

  • 格式:[标题(年份)](https://thetvdb.com/series/SLUG)
  • 使用编号列表供用户选择
  • 包含年份和简短简介
添加电视剧
  1. 搜索电视剧
  2. 展示搜索结果和 TVDB 链接
  3. 用户选择一个编号
  4. 添加电视剧(默认搜索剧集)

参数

add 命令
  • <tvdbId>:电视剧的 TVDB ID(必填)
  • --no-search:添加后不搜索剧集
remove 命令
  • <tvdbId>:电视剧的 TVDB ID(必填)
  • --delete-files:同时删除媒体文件(默认保留文件)

注意事项

  • 需要访问 Sonarr 服务的网络连接
  • 使用 Sonarr API v3
  • 所有数据操作均返回 JSON
  • 质量配置文件 ID 因安装情况而异——使用 config 查询
  • 添加电视剧时使用 .env 中的 SONARR_DEFAULT_QUALITY_PROFILE(默认值为 1)

参考资料

详细的本地参考资料请参阅:


🔧 Agent 工具使用要求

**重要:**通过 zsh-tool 调用此技能中的脚本时,始终使用 pty: true。

如果不使用 PTY 模式,即使命令执行成功,也无法看到命令输出。

正确的调用方式:

<invoke name="mcp__plugin_zsh-tool_zsh-tool__zsh">
<parameter name="command">./skills/SKILL_NAME/scripts/SCRIPT.sh [args]</parameter>
<parameter name="pty">true</parameter>
</invoke>

评论

支持 Markdown