使用说明
Jellyfin MCP服务器
MCP服务器(stdio),用于通过HTTP API控制Jellyfin,与Node.js 18兼容。
特性
已实施的工具:
jellyfin_browsejellyfin_get_recommendationsjellyfin_get_next_upjellyfin_play_by_namejellyfin_playback_control
包括在以下情况下用于播放工具的智能会话自动发现 sessionId 省略。
jellyfin_playback_control 需要一个活动的玩家会话,如果当前没有任何游戏,则返回错误。
工具输出有意紧凑,默认上限为 20 每次通话的物品。
对于“play breaking bad”风格的请求,请使用 jellyfin_play_by_name 在一次工具调用中搜索并开始播放。
需求
- Node.js 18+
- Jellyfin服务器URL
- Jellfin API密钥
环境变量
必修的:
JELLYFIN_API_URL(例如:http://192.168.1.50:8096)JELLYFIN_API_KEY
可选:
JELLYFIN_USER_IDJELLYFIN_SESSION_STRATEGY(active,recent,device,ask;默认active)JELLYFIN_DEVICE_ID_HINT(首选设备id/名称匹配)JELLYFIN_TIMEOUT_MS(默认值15000)
注:
- 如果您的密钥是服务器API密钥(而不是用户身份验证令牌),
/Users/Me可能会回来400. - 服务器通过回退来处理此问题
/Users以及当只有一个用户存在时自动选择单个用户。 - 如果存在多个用户,请设置
JELLYFIN_USER_ID明确地。
安装
npm install
测试
npm test
跑
JELLYFIN_API_URL=http://YOUR_JELLYFIN_HOST:8096 \
JELLYFIN_API_KEY=YOUR_API_KEY \
node src/index.js
MCP客户端配置(否 cwd)
使用绝对脚本路径,以便客户端 cwd 行为并不重要。
克劳德桌面风格:
{
"mcpServers": {
"jellyfin": {
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/jellyfin_mcp/src/index.js"
],
"env": {
"JELLYFIN_API_URL": "http://YOUR_JELLYFIN_HOST:8096",
"JELLYFIN_API_KEY": "YOUR_API_KEY",
"JELLYFIN_SESSION_STRATEGY": "active"
}
}
}
}
通用MCP配置:
{
"servers": {
"jellyfin": {
"type": "stdio",
"command": "node",
"args": [
"/ABSOLUTE/PATH/TO/jellyfin_mcp/src/index.js"
],
"env": {
"JELLYFIN_API_URL": "http://YOUR_JELLYFIN_HOST:8096",
"JELLYFIN_API_KEY": "YOUR_API_KEY"
}
}
}
}
其他规划说明仍保留在 docs/IMPLEMENTATION_PLAN.md.