🎵 Lidarr 助手 MCP
MCP(模型上下文协议)服务器,用于通过像Claude这样的AI助手管理您的Lidarr音乐库。
📋 概述
Lidarr Assistant MCP 允许您直接从 Claude Desktop 或任何 MCP 兼容客户端控制 Lidarr。使用自然语言添加艺术家、搜索音乐、管理专辑并监控下载!
这个项目是受到……的启发而设计的 ARR-助理-MCP(或根据具体上下文,可译为“ARR助理-MCP系统/模块/等”) 并将其扩展以支持Lidarr,一个音乐库管理器。
✨ 特点
- 🔍(放大镜图标,通常表示搜索或查看细节) 搜索艺术家 通过与MusicBrainz的集成
- 加号 添加艺术家 自动监控地添加到您的图书馆
- 📚 书籍 管理相册 和轨迹
- 📊(表格/数据图表) 查看图书馆统计信息 以及收藏概览
- ⚙️(齿轮符号,常用于表示机械、装置或设置等含义,在此处作为独立符号无直接对应中文翻译,可保留原样或根据上下文解释为“齿轮”、“装置”等) 配置质量配置文件 以及元数据配置文件
- 📥(文件夹图标,可理解为“文件夹”或“资料夹”) 监控下载队列 实时地
- 🔎 翻译成中文是:🔎(这个符号本身在中文中没有直接对应的翻译,它通常代表“搜索”或“放大镜”的意思,用于表示搜索或查看细节的动作。) 自动搜索 对于缺失的专辑
- 📋(清单/事项列表) 列出缺失的专辑 正在被监控的
🛠️ 前提条件
- python ≥ 3.12
- 紫外线 - 快速的Python包管理器(在此安装)
- Lidarr - 运行中的实例
- Claude 桌面版 (或任何与MCP兼容的客户端)
📦 安装
1. 克隆或创建项目
# Create project directory
mkdir lidarr-assistant-mcp
cd lidarr-assistant-mcp
# Or clone from your repository
git clone https://github.com/your-username/lidarr-assistant-mcp.git
cd lidarr-assistant-mcp2. 安装依赖项
# Initialize project with uv
uv init
# Install dependencies
uv sync⚙️ 配置
本地配置(.env)
创建一个 .env 在项目根目录下存放用于本地开发的文件:
LIDARR_URL=http://your-ip:8686
LIDARR_API_KEY=your-lidarr-api-key如何找到您的Lidarr API密钥:
- 在浏览器中打开 Lidarr
- 首选
Settings→General→Security - 复制
API Key价值
Claude桌面版的配置
编辑您的MCP配置文件:
- Windows:
%APPDATA%\Claude\claude_desktop_config.json - macOS(苹果电脑操作系统):
~/Library/Application Support/Claude/claude_desktop_config.json - Linux:
~/.config/Claude/claude_desktop_config.json
在(文件/列表等)中添加以下条目 mcpServers 对象:
{
"mcpServers": {
"lidarr-assistant": {
"command": "uv",
"args": [
"--directory",
"C:/Users/YourUsername/Documents/lidarr-assistant-mcp",
"run",
"src/lidarr_assistant_mcp/main.py"
],
"env": {
"LIDARR_URL": "http://78.198.189.9:8686",
"LIDARR_API_KEY": "your-lidarr-api-key-here"
}
}
}
}重要提示: 更新路径和值:
- 改变
--directory路径以匹配您的安装位置 - 替换
LIDARR_URL使用您的Lidarr服务器地址 - 替换
LIDARR_API_KEY使用您的实际API密钥
🚀 使用方法
本地测试
# Set environment variables and run
export LIDARR_URL="http://your-ip:8686"
export LIDARR_API_KEY="your-api-key"
uv run src/lidarr_assistant_mcp/main.py服务器将启动并等待通过标准输入输出(stdio)接收MCP命令。
与Claude Desktop配合使用
配置Claude Desktop后:
- 重启Claude桌面版 加载新的MCP服务器
- 与克劳德开始对话
- 克劳德将自动获得Lidarr工具的访问权限
示例命令
一旦与Claude集成,您就可以使用自然语言:
测试连接:
Test the connection to Lidarr搜索艺术家:
Search for Pink Floyd in Lidarr添加一位艺术家:
Add the artist Pink Floyd to my Lidarr library查看库:
Show me all artists in my music library检查缺失的专辑:
What albums am I missing from my monitored artists?查看下载队列:
What's currently downloading in Lidarr?查找缺失的专辑:
Search for all missing albums🔧 可用工具
| 工具 | 描述 | |
|---|---|---|
| ------ | ------------- | test_lidarr_connection |
| 测试连接并显示 Lidarr 配置 | search_artist | |
| 通过名称或MusicBrainz ID搜索艺术家 | add_artist | |
| 将艺术家添加到您的库中并进行监控 | get_artists | |
| 列出你库中的所有艺术家 | get_artist_albums | |
| 获取特定艺术家的所有专辑 | search_missing_albums | |
| 触发搜索缺失的专辑 | get_quality_profiles | |
| 查看可用的音频质量配置文件 | get_metadata_profiles | |
| 查看元数据配置文件(专辑类型) | get_download_queue | |
| 查看当前下载队列 | get_wanted_missing |
| 列出缺失的监控专辑 |
🎯 与Sonarr/Radarr的主要区别
- 层级结构Radarr
- 简单的单层(电影)Sonarr(一个用于监控和自动下载电视节目的软件)
- 两级(系列→集数)Lidarr(可能指某种特定软件或系统,但直接翻译无具体含义,可保持原样或根据上下文具体解释)
两级结构,具有复杂性(艺术家 → 专辑 → 曲目)
- 元数据来源Radarr
- TMDb(数字ID)Sonarr(可译为“索纳尔”或根据具体语境保持原名,因其是一个特定软件或系统的名称)
- TVDb(数字ID)Lidarr
MusicBrainz(UUID 格式)
- 独特特点元数据配置文件
- 控制要监控的专辑类型(专辑、EP、单曲、合集等)多次发布
- 专辑可以有多个版本(重新发行、不同版本)艺术家与专辑监听对比
可以关注艺术家而不必关注他们的所有专辑
🐞 故障排除
“API密钥无效”错误 HTTP 401: Unauthorized
错误:
- 解决方案:
LIDARR_API_KEY验证 - 在你的配置中
- 确认Lidarr中的API密钥未过期
配置更改后重启Claude桌面版
“连接被拒绝”错误 Connection error to Lidarr
错误:
- 解决方案:
- 验证 Lidarr 是否正在运行
LIDARR_URL确认 - 是正确的(IP和端口)
http://your-ip:8686 - 在浏览器中测试该URL:
检查防火墙规则
未找到艺术家
- 解决方案:
- 尝试艺术家名称的不同拼写
- 使用官方的MusicBrainz名称
lidarr:uuid
如果已知,可通过MusicBrainz ID进行搜索:
缺失配置文件错误
- 解决方案:
- 验证质量配置文件是否存在:设置 → 配置文件 → 质量配置文件
- 验证元数据配置文件是否存在:设置 → 配置文件 → 元数据配置文件
如有必要,为每种类型至少创建一个配置文件
缺少根文件夹 No root folder configured
错误:
- 解决方案:
- 前往 Lidarr:设置 → 媒体管理 → 根文件夹
/music添加一个根文件夹(例如。,D:\Music或者 - )
确保 Lidarr 具有写入权限
📚 API参考
GET /api/v1/system/status # System information
GET /api/v1/rootfolder # Root folders
GET /api/v1/qualityprofile # Quality profiles
GET /api/v1/metadataprofile # Metadata profiles (unique to Lidarr)
GET /api/v1/artist/lookup # Search artists
GET /api/v1/artist # Get all artists
GET /api/v1/artist/{id} # Get specific artist
POST /api/v1/artist # Add artist
GET /api/v1/album # Get albums
POST /api/v1/command # Send commands
GET /api/v1/queue # Download queue
GET /api/v1/wanted/missing # Missing albumsLidarr API使用的端点
- 🔗 资源Lidarr 官方网站
- https://lidarr.audio/(中文可表述为:Lidarr音频网站)Lidarr API文档
- https://lidarr.audio/docs/api/(Lidarr API文档)MusicBrainz(音乐大脑)
- https://musicbrainz.org/(音乐脑图网站)MCP协议
- https://modelcontextprotocol.io/(该网址可直接作为翻译结果,因为网址本身无需翻译,但为符合要求,可表述为“网址:https://modelcontextprotocol.io/”)MCP Python SDK(MCP Python软件开发工具包)
- https://github.com/modelcontextprotocol/python-sdk(中文翻译为):https://github.com/modelcontextprotocol/PythonSDK(或保持原网址不变,因为网址本身无需翻译,这里仅说明其含义):ModelContextProtocol的Python SDK(软件开发工具包)仓库arr-assistant-mcp 可以翻译为“助理-辅助-多频道处理(或多客户端处理,具体含义需根据上下文确定)”。不过,这个翻译比较直译,具体含义可能需要根据实际应用场景来调整。如果“arr”、“assistant”、“mcp”有特定的行业或技术含义,那么翻译时需要考虑这些因素
https://github.com/omniwaifu/arr-assistant-mcp(中文可表述为:“https://github.com/omniwaifu/arr-assistant-mcp 项目链接”,但通常直接使用原链接表述即可,无需额外翻译链接本身)
🤝 贡献
- 欢迎投稿!请随时:
- 报告错误
- 建议新功能
- 提交拉取请求
完善文档
📝 许可证
这个项目是开源的,并遵循MIT许可协议。
- 🙏 致谢 受……的启发
- ARR-助手-MCP(注:这里的“arr”可能是某个特定上下文中的缩写或特定项目名称,而“-assitant-mcp”则可能表示这是一个与“MCP”相关的助手或系统组件,但具体含义需根据上下文确定。在没有具体上下文的情况下,我给出了一个较为通用的翻译。) 建立在
- 模型上下文协议 由……提供动力/支持 Lidarr 并且
MusicBrainz(音乐大脑)
📧 支持
- 如果您遇到问题: 检查一下 故障排除
- 部分;章节
- 查看 Lidarr 日志:系统 → 日志
- 检查Claude Desktop的日志以查找MCP错误
______________________________________________________________________
在GitHub上提交一个包含详细信息的问题
