媒体管理服务器

Plex MCP Server是一个用于Plex媒体管理的模型上下文协议服务器,使AI助手能够与您的Plex库进行交互。

  • by richarddas
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 richarddas/plex_mcp_server

使用说明

Plex MCP服务器

用于Plex媒体管理的模型上下文协议(MCP)服务器,使Claude等AI助手能够与您的Plex库进行交互。

特性

  • 电影管理:搜索、浏览和分析您的电影收藏
  • 图书馆统计:深入了解您的媒体收藏
  • 类型和导演搜索:根据特定标准查找内容
  • 最近添加的内容:跟踪新添加的内容
  • 可扩展架构:易于添加电视节目和其他媒体类型

需求

  • Python 3.8或更高版本
  • Plex媒体服务器,可访问API
  • 通过网络访问您的Plex服务器

设置

快速设置(推荐)

# Clone the repository
git clone https://github.com/richarddas/plex_mcp_server.git
cd plex_mcp_server

# Run the setup script (creates venv and installs dependencies)
./setup.sh

# Edit your Plex details
nano .env

# Activate virtual environment and start the server
source venv/bin/activate
python main.py

手动设置

  1. 创建并激活虚拟环境:

    python3 -m venv venv
    source venv/bin/activate
    
  2. 安装依赖项:

    pip install --upgrade pip
    pip install -r requirements.txt
    
  3. 配置环境变量:

    cp .env.example .env
    nano .env
    

    更新中的值 .env:

    • PLEX_URL:您的Plex服务器URL(例如。, http://192.168.1.100:32400)
    • PLEX_TOKEN:您的Plex身份验证令牌(如何找到它)
    • HOST 和 PORT:服务器绑定(默认值适用于大多数设置)
    • LOG_LEVEL:记录详细信息(建议使用INFO)
  4. 运行服务器:

    python main.py
    

日常使用

初始设置后,要运行服务器:

cd plex-mcp-server
source venv/bin/activate  # Activate virtual environment
python main.py            # Start server
# When done: deactivate   # Exit virtual environment

Claude桌面配置

添加到您的Claude桌面 config.json:

{
  "globalShortcut": "",
  "mcpServers": {
    "plex": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote",
        "http://your-server:8000/sse",
        "--allow-http"
      ]
    }
  }
}

可用工具

电影工具

  • get_library_stats -图书馆总体统计
  • list_all_movies -浏览所有带分页的电影
  • search_movies -按标题搜索
  • search_by_genre -按流派查找电影
  • search_by_director -按导演查找电影
  • search_by_year_range -按年份查找电影
  • get_all_genres -列出所有可用的流派
  • get_all_directors -列出所有董事
  • get_recent_movies -最近添加的电影

项目结构

plex_mcp_server/
├── main.py              # FastAPI server
├── config.py            # Configuration
├── plex_client.py       # Plex connection
├── mcp_handler.py       # MCP message handling
├── tools/
│   ├── movie_tools.py   # Movie-related tools
│   └── tv_tools.py      # TV tools (future)
└── requirements.txt     # Dependencies

发展

要添加新工具,请执行以下操作:

  1. 将方法添加到相应的工具文件中
  2. 更新 get_tool_definitions() 方法
  3. 在中注册该工具 mcp_handler.py

许可证

MIT许可证