YARR Media Stack MCP Server

YARR Media Stack MCP Server

一个综合的模型上下文协议服务器,连接大型语言模型(LLM)与自托管媒体服务,从而实现对电视节目、电影、下载和通知的自然语言控制,同时保持传统的 API 访问方式。

Category
访问服务器

README

🎬 YARR 媒体栈 MCP 服务器

一个全面的模型上下文协议 (MCP) 服务器,弥合了大型语言模型 (LLM) 和您自托管的媒体技术栈之间的差距。该项目支持对您的媒体服务进行智能自动化和自然语言控制,同时保持传统的程序化访问。

🎯 主要特性

  • 🤖 LLM 驱动的媒体服务自然语言控制
  • 🔌 模块化架构,易于服务集成
  • 🔄 统一 API 网关,用于传统访问
  • 🎮 用于可视化控制的 Web UI(计划中)
  • 🔐 无需 LLM 中间件的直接 API 访问
  • 🧩 用于新服务的可扩展插件系统

📚 文档

🏗️ 项目结构

这个单体仓库被组织成模块化的包,每个包服务于一个特定的目的:

  • 📦 packages/server: 核心 MCP 服务器实现
  • 🌐 packages/web: Web UI 界面(计划中)
  • 💬 packages/chatbot: LLM 聊天界面(计划中)
  • 🔀 packages/api-gateway: API 路由和服务协调(计划中)

🔧 集成服务

✅ 当前支持

  • Gotify - 通知管理
  • Sonarr - 电视剧管理
  • Prowlarr - 索引器管理
  • Overseerr - 请求管理

🚧 计划集成

  • Radarr - 电影管理
  • qBittorrent - Torrent 管理
  • SABnzbd - Usenet 下载
  • Plex - 媒体服务器
  • Tautulli - 服务器统计
  • TMDB - 媒体数据库

📖 服务文档

🟢 当前集成

📋 计划集成

🧪 开发

测试工具

🛠️ SDK 参考

🏛️ 架构

该项目遵循模块化架构,其中每个服务包包含:

  • 🔌 API 客户端实现
  • 📝 类型定义
  • 🛠️ 用于服务交互的 MCP 工具
  • 🛣️ API 路由

这种架构支持多种交互方法:

  1. LLM 驱动的控制:自然语言处理,用于直观的媒体管理
  2. 传统 API 访问:通过统一网关的直接 API 调用
  3. Web 界面:用于服务管理的可视化控制面板(计划中)
  4. 聊天机器人界面:用于服务控制的对话式 UI(计划中)

模块化设计允许:

  • 轻松添加新服务
  • 独立的服务部署
  • 灵活的交互方法
  • 跨服务的一致 API 模式

🚀 快速开始

前提条件

# 克隆并设置仓库
git clone https://github.com/jmagar/yarr
cd yarr
pnpm install

配置

  1. 从模板创建 .env 文件:
cp .env.template .env

然后添加您的服务 API 密钥:

# Sonarr 配置
SONARR_URL=http://localhost:8989
SONARR_API_KEY=your_sonarr_api_key

# Prowlarr 配置  
PROWLARR_URL=http://localhost:9696
PROWLARR_API_KEY=your_prowlarr_api_key

# Overseerr 配置
OVERSEERR_URL=http://localhost:5055
OVERSEERR_API_KEY=your_overseerr_api_key

# Gotify 配置
GOTIFY_URL=http://localhost:8080
GOTIFY_APP_TOKEN=your_gotify_app_token
GOTIFY_CLIENT_TOKEN=your_gotify_client_token  # 可选,用于接收消息
  1. 配置 Claude Desktop:

重要提示:在您的配置中使用完整路径,以确保 Claude Desktop 可以找到可执行文件和项目目录。

{
  "mcpServers": {
    "yarr": {
      "command": "C:\\Program Files\\nodejs\\node.exe",
      "args": ["C:\\path\\to\\yarr\\packages\\server\\dist\\index.js"],
      "cwd": "C:\\path\\to\\yarr",
      "transport": {
        "type": "stdio"
      },
      "env": {
        "NODE_ENV": "production",
        "PROWLARR_URL": "http://localhost:9696",
        "PROWLARR_API_KEY": "your_prowlarr_api_key",
        "SONARR_URL": "http://localhost:8989",
        "SONARR_API_KEY": "your_sonarr_api_key",
        "OVERSEERR_URL": "http://localhost:5055",
        "OVERSEERR_API_KEY": "your_overseerr_api_key",
        "GOTIFY_URL": "http://localhost:8080",
        "GOTIFY_APP_TOKEN": "your_gotify_app_token",
        "GOTIFY_CLIENT_TOKEN": "your_gotify_client_token"
      }
    }
  }
}

注意:将 C:\\path\\to\\yarr 替换为您实际的项目目录路径。

可用工具

Sonarr

// 电视剧管理
sonarr:search              - 搜索电视剧
sonarr:list-series         - 列出所有监控的电视剧
sonarr:series-details      - 获取电视剧的详细信息
sonarr:add-series         - 添加新的电视剧进行监控
sonarr:monitor-season     - 监控或取消监控一个季度
sonarr:list-profiles      - 列出质量和语言配置文件
sonarr:upcoming          - 获取即将播出的剧集
sonarr:queue             - 获取当前下载队列
sonarr:remove-from-queue - 从下载队列中删除项目

Prowlarr

prowlarr:search           - 搜索所有索引器
prowlarr:list-indexers    - 列出配置的索引器
prowlarr:indexer-stats    - 获取索引器性能统计信息
prowlarr:check-config     - 验证 Prowlarr 连接

Overseerr

overseerr:search          - 搜索电影和电视剧
overseerr:request         - 请求电影或电视剧
overseerr:list-requests   - 列出媒体请求
overseerr:update-request  - 更新请求状态
overseerr:trending        - 获取具有推荐的趋势媒体
overseerr:available       - 获取流行的可用媒体
overseerr:status          - 获取系统状态

Gotify

gotify:messages:list      - 列出带有分页的消息
gotify:messages:send      - 发送新消息
gotify:messages:delete    - 按 ID 删除消息
gotify:messages:cleanup   - 删除旧消息
gotify:apps:list         - 列出所有应用程序
gotify:apps:create       - 创建新应用程序
gotify:clients:list      - 列出所有客户端
gotify:clients:create    - 创建新客户端
gotify:health           - 检查 Gotify 服务器健康状况
gotify:stats            - 获取 Gotify 统计信息

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选