媒体
Jellyfin媒体服务器的MCP服务器。通过HTTP Streamable传输将搜索、浏览、流URL生成和播放控制作为MCP工具公开。
快速开始
pip install .
export MEDIAMCP_JELLYFIN_URL=http://jellyfin:8096
export MEDIAMCP_JELLYFIN_API_KEY=your-api-key
mediamcp
# or: python -m mediamcp服务器启动于 http://0.0.0.0:8400/mcp 默认情况下。
配置
所有环境变量都以前缀 MEDIAMCP_:
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
MEDIAMCP_JELLYFIN_URL | 是 | Jellyfin服务器基本URL | |
MEDIAMCP_JELLYFIN_API_KEY | 是 | 果冻API密钥 | |
MEDIAMCP_JELLYFIN_USER_ID | no | 自动检测 | 用户范围查询的Jellyfin用户ID |
MEDIAMCP_HOST | 没有 | 0.0.0.0 | 收听地址 |
MEDIAMCP_PORT | 没有 | 8400 | 监听端口 |
MEDIAMCP_AUTH_TOKEN | 无需MCP客户端提供承载令牌 |
MCP工具
search_media
按标题搜索Jellyfin图书馆。按类型筛选:电影、系列、剧集、音乐。
get_media_details
获取特定项目的完整元数据:概述、流派、演员阵容、收视率、媒体来源。
get_stream_url
获取媒体项目的播放就绪URL。返回可以嵌入的直接流和HLS URL ` 或 ` 元素。URL直接指向带有嵌入式API密钥的Jellyfin。
browse_library
列出库或通过排序和分页浏览库中的项目。
get_sessions
列出活动的Jellyfin播放会话,包括设备、播放状态和当前播放信息。
control_playback
控制活动会话上的播放:播放、暂停、停止、查找、下一个、上一个。
MCP客户端配置
[mcp.mediamcp]
transport = "streamable-http"
url = "http://mediamcp-host:8400/mcp"发展
pip install -e ".[dev]"
# All tests (unit + in-process server tests with mocked Jellyfin)
pytest
# Linting and type checking
ruff check src/ tests/
mypy --strict src/mediamcp/