YouTube直播工作流服务

FastMCP服务器为YouTube直播提供工作流管理,包括列出完成的广播、克隆或创建流、绑定广播、上传缩略图和读取实时聊天。

  • by chech0x
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 chech0x/youtube-studio-mcp

使用说明

youtube mcp

适用于YouTube Live工作流的FastMCP服务器:列出已完成的广播、克隆或创建流、绑定广播、上传缩略图和阅读实时聊天。

需求

  • Python 3.12
  • uv (可选但推荐)

快速开始

uv sync
cp .env.example .env  # create your env file
uv run python -m main

标准模式

uv run python -m stdio_main

笔记:

  • Stdio模式不公开 /callback HTTP路由。对于OAuth,使用HTTP模式捕获重定向。

OAuth设置

设置这些 .env:

YOUTUBE_CLIENT_ID=...
YOUTUBE_CLIENT_SECRET=...
YOUTUBE_REDIRECT_URI=http://localhost:9000/callback
YOUTUBE_SCOPES=https://www.googleapis.com/auth/youtube.force-ssl

然后使用MCP工具:

  • youtube_oauth_authorization_url

同意后,谷歌重定向到 /callback 以及服务器 自动存储令牌 在 .tokens.json (可配置为 TOKEN_STORE_PATH).每个条目都包括用户id/名称、时间戳和令牌。活动帐户存储在 .active_account (可配置为 ACTIVE_ACCOUNT_PATH).

重要提示:

  • 这是 仅限本地/dev 并使用 无需额外的安全强化 超出文件权限。
  • 多账户支持 不用于生产 使用。

MCP工具(高级)

  • youtube_live_broadcasts_list_completed
  • youtube_live_broadcasts_list_by_status
  • youtube_live_broadcasts_list_upcoming
  • youtube_live_chats_list
  • youtube_live_broadcasts_get
  • youtube_live_streams_get
  • youtube_live_broadcasts_insert
  • youtube_live_streams_insert
  • youtube_live_broadcasts_bind
  • youtube_thumbnails_set
  • youtube_live_chat_messages_list
  • youtube_live_chat_messages_insert
  • youtube_accounts_list
  • youtube_accounts_set_active

输入结构(命名参数)

所有工具均接受 直接命名字段 (无额外费用 params 包装)。示例:

{"max_results": 10, "page_token": "...", "channel_id": "UC..."}
{"broadcast_id": "...", "part": "snippet,contentDetails,status"}
{"title": "...", "scheduled_start_time": "2026-02-01T15:00:00Z", "privacy_status": "unlisted"}