监督员 MCP
Overseerr 的模型上下文协议 (MCP) 集成,可通过 Claude AI 与您的媒体请求系统进行自然语言交互。此服务器允许您搜索电影和电视节目、发出媒体请求,并使用对话式语言管理您的 Overseerr 实例。
对话示例
以下是使用此服务器与 Claude 进行的一些示例对话:
You: Can you find any recent sci-fi movies?
Claude: Let me search for recent science fiction films...
[Uses overseerr:search to find recent sci-fi movies]
You: That looks good! Can you request the second one?
Claude: I'll request that movie for you...
[Uses overseerr:request to submit the media request]
You: What TV shows are available about cooking?
Claude: I'll search for cooking-related TV shows...
[Uses overseerr:search with type='tv' to find cooking shows]
特征
媒体搜索
- 搜索电影、电视节目和人物
- 获取有关媒体的详细信息,包括:
- 按媒体类型过滤(电影/电视/人物)
- 自然语言查询(例如,“查找最近的科幻电影”或“搜索像《绝命毒师》这样的节目”)
媒体请求
- 请求电影和电视节目
- 指定电视节目的单独季节
- 跟踪请求状态
- 获取有关请求更新的通知
- 自然语言请求(例如,“请求最新的蝙蝠侠电影”或“将《继承之战》添加到我的观看列表中”)
一体化
- 通过 stdio 传输实现无缝 Claude AI 集成
- 与您的 Overseerr 实例进行实时交互
- 安全 API 密钥处理
- 速率限制和错误处理
- 通过环境变量轻松配置
设置
先决条件
快速入门
- 安装依赖项:
- 构建项目:
- 配置环境:
# Copy template
cp .env.template .env
# Edit .env with your values
OVERSEERR_URL=your_overseerr_url
OVERSEERR_API_KEY=your_api_key
- 配置Claude桌面:
Linux/Mac:
{
"overseerr": {
"command": "node",
"args": ["/path/to/overseerr/packages/server/dist/index.js"],
"cwd": "/path/to/overseerr",
"transport": {
"type": "stdio"
},
"env": {
"OVERSEERR_URL": "your_overseerr_url",
"OVERSEERR_API_KEY": "your_api_key"
}
}
}
Windows(注意双反斜杠):
{
"overseerr": {
"command": "node",
"args": ["C:\\path\\to\\overseerr\\packages\\server\\dist\\index.js"],
"cwd": "C:\\path\\to\\overseerr",
"transport": {
"type": "stdio"
},
"env": {
"OVERSEERR_URL": "your_overseerr_url",
"OVERSEERR_API_KEY": "your_api_key"
}
}
}
- 启动服务器:
技术细节
项目结构
packages/
├── config/ # Configuration management
├── overseerr/ # Overseerr API client
├── server/ # MCP server implementation
└── shared/ # Shared types and utilities
可用工具
搜索媒体( overseerr:search
)
在 Overseerr 数据库中搜索电影、电视节目和人物。
{
// The search query - can be a title, person, or general description
query: string,
// Optional: Filter by type
// - 'movie': Only search movies
// - 'tv': Only search TV shows
// - 'person': Only search people
type?: 'movie' | 'tv' | 'person'
}
示例查询:
- 《寻找盗梦空间》
- “查找 2023 年的电视节目”
- “寻找汤姆·汉克斯主演的电影”
请求媒体( overseerr:request
)
请求将电影或电视节目添加到您的媒体库。
{
// The TMDB ID of the media to request
mediaId: number,
// Type of media being requested
// - 'movie': Request a movie
// - 'tv': Request a TV show
mediaType: 'movie' | 'tv',
// Optional: For TV shows, specify which seasons to request
// If not provided, requests all available seasons
seasons?: number[]
}
示例请求:
- 点播电影:“点播《黑客帝国》”
- 请求特定季节:“添加《办公室》第 1-3 季”
- 请求观看所有季:“请求观看《绝命毒师》全集”
配置
环境变量
OVERSEERR_URL
:您的 Overseerr 实例 URLOVERSEERR_API_KEY
:您的 Overseerr API 密钥
错误处理
服务器实现了强大的错误处理:
- 带有有意义消息的 API 错误
- 速率限制保护
- 请求验证
- 连接错误恢复
贡献
- 分叉存储库
- 创建功能分支
- 提交你的更改
- 推送到分支
- 创建拉取请求
执照
麻省理工学院