Moviepilot Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Moviepilot Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
这是一个 模型上下文协议 (MCP - Model Context Protocol) 服务器实现,用于连接大型语言模型 (LLM) 与 MoviePilot 媒体库自动化管理服务器。
本项目旨在让用户能够通过自然语言与他们的 MoviePilot 实例进行交互,从而实现以下功能:
通过将 MoviePilot 的功能暴露给 LLM,用户可以在支持 MCP 的聊天应用(如 Cherry Studio 或集成了 MCP 的客户端)中,用对话的方式轻松管理媒体库。
本项目支持使用 Docker 进行部署。您可以从 Docker Hub 拉取预构建的镜像。
Docker Hub 镜像: pollo3470/moviepilot-mcp
#### a. 使用 docker run
docker pull pollo3470/moviepilot-mcp:latest在您希望运行 Docker 的目录下创建一个 .env 文件,填入必要的配置信息。
# .env
MOVIEPILOT_BASE_URL=http://your-moviepilot-ip:3000 # 你的 MoviePilot 地址
MOVIEPILOT_USERNAME=your_moviepilot_username # 你的 MoviePilot 用户名 (用于密码认证)
MOVIEPILOT_PASSWORD=your_moviepilot_password # 你的 MoviePilot 密码 (用于密码认证)
MCP_API_KEY=your_strong_api_key # 请设置一个强随机的API密钥,用于保护MCP服务器的访问。未设置时会自动生成一个随机密钥并打印到日志。
# 可选配置
# LOG_LEVEL=INFO docker run -d \
--name moviepilot-mcp \
-p 8000:8000 \
--env-file ./.env \
--restart unless-stopped \
pollo3470/moviepilot-mcp:latest参数说明:
-d: 后台运行容器。--name moviepilot-mcp: 给容器命名。-p 8000:8000: 将主机的 8000 端口映射到容器的 8000 端口。--env-file ./.env: 从当前目录下的 .env 文件加载环境变量。您也可以使用多个 -e 参数单独指定环境变量,例如-e MOVIEPILOT_BASE_URL="http://localhost:3000" -e MCP_API_KEY="your_secret_key"。
--restart unless-stopped: 容器退出时自动重启,除非手动停止。#### b. 使用 docker-compose
参考本项目根目录下 docker-compose.yml 文件,创建一个docker-compose.yml文件。
与 docker-compose.yml 同级,创建一个 .env 文件,并填入必要的配置信息,如上文 docker run 部分所述。 确保 MCP_API_KEY 已设置。**
在docker-compose.yml文件所在目录下执行:
docker-compose up -d此命令会拉取最新镜像(如果本地没有或有更新)并启动服务。
要停止服务,请运行:
docker-compose down启动后,streamable http 的 MCP 服务将在 http://localhost:8000/mcp (或您配置的主机和端口) 上可用。请确保在客户端请求时,在 HTTP Header 中包含 Authorization 并填入您在 .env 文件中设置的 MCP_API_KEY。
在支持 MCP 的应用(如Cline)中添加以下配置。
{
"mcpServers": {
"moviepilot": {
"command": "uvx",
"args": [
"moviepilot-mcp"
],
"env": {
"MOVIEPILOT_BASE_URL": "MoviePilot 服务器的URL",
"MOVIEPILOT_USERNAME": "你的 MoviePilot 用户名",
"MOVIEPILOT_PASSWORD": "你的 MoviePilot 密码"
}
}
}
}基于 MoviePilot 的 API,本 MCP 服务器计划(或已)暴露以下核心功能作为 MCP Tools:
search_media_or_persondiscover_douban_media, discover_tmdb_mediaget_upcoming_or_newly_released_mediaget_media_detailsget_season_episodesadd_subscribelist_subscribes (列出所有), get_subscribe (获取单个)ID')", "查看订阅ID为5的详情 (使用 get_subscribe, id_type='subscribe', id_value='5')"
update_subscribedelete_subscribe删除订阅ID为5的订阅 (使用 delete_subscribe, id_type='subscribe', id_value='5')"
set_subscribe_statusGET /api/v1/search/media/{mediaid}GET /api/v1/search/titlePOST /api/v1/download/GET /api/v1/download/GET /api/v1/download/stop/{hash}, GET /api/v1/download/start/{hash}, DELETE /api/v1/download/{hash}GET /api/v1/mediaserver/latest, GET /api/v1/mediaserver/playingGET /api/v1/mediaserver/existsGET /api/v1/history/download先决条件:
步骤:
git clone https://github.com/Pollo3470/MoviePilot-MCP
cd MoviePilot-MCP创建 .env 文件 (可以从 .env.example 复制) 并填入必要的配置信息:
# .env Example
MOVIEPILOT_BASE_URL=http://your-moviepilot-ip:3000 # 你的 MoviePilot 地址
MOVIEPILOT_USERNAME=your_moviepilot_username # 你的 MoviePilot 用户名 (用于密码认证)
MOVIEPILOT_PASSWORD=your_moviepilot_password # 你的 MoviePilot 密码 (用于密码认证)
MCP_API_KEY=your_strong_api_key # 请设置一个强随机的API密钥,用于保护MCP服务器的访问 uv sync欢迎贡献!如果你发现 Bug 或有功能建议,请提交 Issue。如果你想贡献代码,请 Fork 仓库并发起 Pull Request。
感谢 MoviePilot 项目。本项目是基于MoviePilot的API构建的,没有MoviePilot的出色工作,这个MCP服务器将无法实现。
本项目采用 MIT License 授权。
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.