Plex克劳德插件
用于Plex媒体服务器管理的Claude MCP插件。提供自动库更新、智能媒体文件命名以及带文件夹监视的自动摄取。
特性
- 图书馆管理:列出、搜索和触发Plex库上的扫描
- 介质标识:使用guessit解析文件名,根据TMDb进行验证,构造符合Plex的名称
- 批处理:在一次操作中识别和重命名整个媒体文件目录
- 自动摄入:监视文件夹中的新媒体文件,自动识别、重命名、复制到库并触发扫描
- 安全模型:三层工具分类(读/写/阻止)可防止意外损坏
建筑
使用FastMCP构建为Python MCP服务器,遵循与 TrueNAS克劳德插件.
Claude Desktop / Claude Code
| stdio (MCP)
v
MCP Server (FastMCP)
+-- PlexClient (python-plexapi)
+-- MediaMatcher (guessit + TMDb)
+-- FileManager (copy/rename/move)
+-- IngestWatcher (watchdog)
+-- IngestHistory (SQLite audit log)需求
- Python 3.11+
- 具有API访问权限的Plex媒体服务器
- TMDb API密钥(免费https://www.themoviedb.org/settings/api)
- uv包管理器
快速开始
📖 看 QUICKSTART.md 有关详细的设置说明!
1.交互式配置(推荐)
cd videodrome-plugin/montreal-v1
./setup-config.sh此向导将:
- ✓ 指导您完成所有设置
- ✓ 测试Plex和TMDb连接
- ✓ 将配置保存到
.env文件
2.测试服务器
uv run --env-file .env videodrome您应该看到: Plex MCP Server started successfully!
3.联系克劳德
增添 ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"plex": {
"command": "uv",
"args": [
"--directory", "/FULL/PATH/TO/videodrome-plugin/montreal-v1",
"run", "--env-file", ".env", "videodrome"
]
}
}
}重要:使用绝对路径并重新启动Claude Desktop!
安装
克劳德桌面(.mcpb)
下载最新 .mcpb 文件来自 发布 并使用Claude Desktop打开它。
克劳德代码(插件)
claude plugin install /path/to/videodrome-plugin手动配置
添加到您的Claude桌面配置(~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"plex": {
"command": "uv",
"args": ["--directory", "/path/to/videodrome-plugin", "run", "videodrome"],
"env": {
"PLEX_URL": "http://192.168.1.100:32400",
"PLEX_TOKEN": "your-plex-token",
"TMDB_API_KEY": "your-tmdb-api-key",
"PLEX_MEDIA_ROOT": "/data/media",
"PLEX_INGEST_DIR": "/data/ingest"
}
}
}
}配置
| 变量 | 必填 | 默认 | 描述 |
|---|---|---|---|
PLEX_URL | 是 | - | Plex服务器URL |
PLEX_TOKEN | 是 | - | X-Plex-Token |
TMDB_API_KEY | 是 | - | TMDb API密钥 |
PLEX_MEDIA_ROOT | 是 | - | 媒体库的根路径 |
PLEX_INGEST_DIR | 没有 | - | 要监视新文件的文件夹 |
PLEX_AUTO_INGEST | 没有 | false | 自动处理高置信度匹配 |
PLEX_CONFIDENCE_THRESHOLD | 没有 | 0.85 | 自动处理的最低置信度 |
PLEX_WATCHER_AUTO_START | 没有 | false | 服务器启动时启动监视器 |
MCP工具
只读(自动批准)
list_libraries-列出Plex库部分list_recent-最近添加的项目search_library-按标题搜索get_server_info-服务器状态list_directory-列出本地文件parse_filename-用猜测来解析search_tmdb-搜索TMDbget_tmdb_details/get_tmdb_episode-TMDb元数据preview_rename-预览Plex兼容名称batch_identify-识别目录中的所有文件get_watcher_status-观察者状态get_ingest_queue-待审核项目get_ingest_history-过去的操作
写(需要确认)
scan_library-触发库扫描rename_file/copy_file/move_file-文件操作create_directory-创建文件夹结构execute_naming_plan-批量重命名/复制execute_ingest-全摄入管道start_watcher/stop_watcher-控制监视器approve_ingest/reject_ingest-处理排队的物品
Claude代码命令
| 命令 | 描述 |
|---|---|
/videodrome:scan | 触发库扫描 |
/videodrome:identify | 识别媒体文件 |
/videodrome:rename | 将文件重命名为Plex格式 |
/videodrome:ingest | 处理一个媒体文件夹 |
/videodrome:status | 显示服务器状态 |
/videodrome:plan | 预览命名计划 |
/videodrome:watch | 控制文件监视器 |
/videodrome:review | 审查待处理的摄入项目 |
发展
# Clone and setup
git clone https://github.com/nickperrott/videodrome-plugin.git
cd videodrome-plugin
uv sync --extra dev
# Run tests
pytest tests/ -v
# Run server locally
uv run videodromePlex命名约定
电影
/Movies/Movie Name (Year) {tmdb-ID}/Movie Name (Year) {tmdb-ID}.mkv电视节目
/TV Shows/Show Name (Year)/Season 01/Show Name (Year) - s01e01 - Episode Title.mkv许可证
麻省理工学院
