mcpField
Y
YouTube MCP

YouTube MCP

本地服务
github.com社交媒体614 周前更新

关于 YouTube MCP

YouTube MCP 为 AI 助手和其他 MCP 客户端提供 YouTube 内容与账户数据查询。它支持免凭据提取视频字幕,并通过 API 密钥访问公开数据、通过 OAuth 访问个人订阅和会员信息。

主要功能

  1. 01提取视频字幕
  2. 02搜索视频、频道和播放列表
  3. 03获取视频与频道元数据
  4. 04查看评论、字幕轨和趋势视频
  5. 05通过 OAuth 访问订阅和会员信息

适用场景

  1. 01按日期、时长或地区查找视频
  2. 02查看视频字幕和互动统计
  3. 03检查频道动态和播放列表
  4. 04查询个人订阅或频道会员

MCP 相关

该 MCP 服务向 MCP 客户端提供 YouTube 搜索、字幕、元数据和账户工具。公开数据需要 API 密钥,订阅和会员功能需要 OAuth;提取字幕无需凭据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"mrsknetwork-ytmcp": {
"command": "npx",
"args": [
"-y",
"@mrsknetwork/ytmcp"
]
}
}
}
启动命令npx -y @mrsknetwork/ytmcp

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@mrsknetwork/ytmcp1.0.14

工具

19

收录的工具列表 · 更新于 2 周前

参数类型必填说明
orderenum否结果的排序方式。使用 'date' 按时间从新到旧排序,使用 'viewCount' 按观看次数排序,使用 'rating' 按评分排序。relevance | date | rating | viewCount | title | videoCount
page_tokenstring否用于获取下一页结果的先前响应令牌。
max_resultsnumber否默认值为 5。最大值为 50。
region_codestring否用于按地理位置限制搜索结果的 ISO 3166-1 alpha-2 国家/地区代码(例如,'US'、'GB'、'IN')。
content_typestring否逗号分隔的列表(例如,'video,channel,playlist')
search_querystring是搜索查询
video_durationenum否按视频时长筛选:短(<4 min)、中(4-20 min)、长(>20 min)。仅当 content_type 包含 'video' 时适用。short | medium | long
published_afterstring否RFC 3339 日期时间(例如,'2024-01-01T00:00:00Z')。仅返回此时间之后发布的结果。
published_beforestring否RFC 3339 日期时间(例如,'2024-12-31T23:59:59Z')。仅返回此时间之前发布的结果。
video_definitionenum否按视频画质筛选:'hd' 或 'standard'。仅当 content_type 包含 'video' 时适用。hd | standard

详细介绍

YouTube MCP

将 AI 助手连接到 YouTube:搜索、字幕文本、元数据等。

npm Downloads Socket Badge MIT MCP


它能做什么?

连接后,你的 AI 可以:

  • 提取整洁、逐字的视频字幕文本。无需凭据。
  • 按关键词、日期范围、时长、画质和地区搜索 YouTube。
  • 获取任意国家和类别的热门视频。
  • 获取视频统计数据、元数据、评论、字幕和频道详情。
  • 通过 @handle 查找频道(例如 @MrBeast)。
  • 通过 OAuth 访问你自己的订阅、会员和会员等级。

快速开始

此服务支持三种访问级别。选择适合你使用场景的级别。

访客模式(无需设置)

开箱即用。get_video_transcript 工具使用 yt-dlp 提取字幕文本,无需任何 API 凭据。

{
  "mcpServers": {
    "youtube-mcp": {
      "command": "npx",
      "args": ["-y", "@mrsknetwork/ytmcp@latest"]
    }
  }
}

API 密钥(推荐)

解锁所有公开数据工具。适用于搜索、元数据、评论、热门视频和字幕文本。

1. 获取 Google API 密钥

  1. 打开 Google Cloud Console。
  2. 为你的项目启用 YouTube Data API v3。
  3. 前往 Credentials 并创建 API Key。

2. 添加到 MCP 客户端配置或 .env 文件

在 MCP 客户端配置中通过 env 传入 GOOGLE_API_KEY,或在项目目录中的 .env 文件里添加 GOOGLE_API_KEY=YOUR_KEY。

{
  "mcpServers": {
    "youtube-mcp": {
      "command": "npx",
      "args": ["-y", "@mrsknetwork/ytmcp@latest"],
      "env": {
        "GOOGLE_API_KEY": "YOUR_GOOGLE_API_KEY"
      }
    }
  }
}

OAuth 2.0
访问私人订阅、会员和账户活动时需要。

1. 创建 OAuth 2.0 客户端

  1. 打开 Google Cloud Console。
  2. 为你的项目启用 YouTube Data API v3。
  3. 前往 Credentials > Create Credentials > OAuth 2.0 Client ID。
  4. 将 Application type 设为 Web application。
  5. 添加以下确切的重定向 URI:http://localhost:31415/oauth2callback。
  6. 前往 OAuth Consent Screen > Test Users 并添加你的 Gmail 地址。

2. 添加到 MCP 客户端配置

凭据通过 MCP 配置中的环境变量安全传递,不会存储在文件中。

{
  "mcpServers": {
    "youtube-mcp": {
      "command": "npx",
      "args": ["-y", "@mrsknetwork/ytmcp@latest"],
      "env": {
        "GOOGLE_CLIENT_ID": "your-client-id.apps.googleusercontent.com",
        "GOOGLE_CLIENT_SECRET": "your-client-secret"
      }
    }
  }
}

3. 首次登录

首次调用工具时,AI 会提供一个登录链接。点击链接,在浏览器中授权此应用,然后告诉 AI 你已完成。会话将会保存。除非你撤销访问权限,否则无需再次登录。

4. 退出登录

随时请 AI 调用 revoke_oauth_token,即可退出登录并删除已存储的凭据。


可用工具

工具身份验证描述
get_video_transcript无使用 yt-dlp 下载完整的语音转录文本。指定 language_code(例如 en、es)以及优先使用人工字幕还是自动生成字幕。返回包含文本的来源元数据。
search_contentAPI Key搜索 YouTube 视频、频道或播放列表。可按 order、published_after、published_before、video_duration、video_definition 和 region_code 筛选。支持分页。
get_video_metadataAPI Key根据视频 ID 获取一个或多个视频的标题、描述、标签、时长和统计数据(观看次数、点赞数、评论数)。
get_channel_metadataAPI Key获取频道资料、订阅者数量、视频数量和上传内容播放列表 ID。接受频道 ID 或 @handle。
list_trending_videosAPI Key获取指定 region_code 下 YouTube 最受欢迎的视频,也可选择 category_id。支持分页。
list_playlistsAPI Key列出某个频道的播放列表,或根据 ID 获取指定播放列表。返回标题、描述和项目数量。
list_playlist_itemsAPI Key按顺序列出播放列表中的所有视频。返回每个条目的标题、位置和视频 ID。
list_video_commentsAPI Key获取视频或频道的顶层评论串。可使用 search_terms 按关键词筛选。支持分页。
list_comment_repliesAPI Key根据 parent_comment_id 获取特定评论串的回复。支持分页。
list_video_captionsAPI Key列出视频可用的字幕轨道,包括语言代码和类型(人工或自动生成)。
list_video_categoriesAPI Key列出指定地区的 YouTube 视频类别名称和 ID。将这些 ID 与 search_content 或 list_trending_videos 搭配使用。
list_channel_activitiesAPI Key获取频道近期的动态信息流,包括上传内容和播放列表新增内容。
list_channel_sectionsAPI Key按顺序列出频道页面上显示的分区。
list_supported_languagesAPI Key列出 YouTube 支持的所有语言及其语言代码和本地化名称。
list_supported_regionsAPI Key列出 YouTube 支持的所有地区及其地区代码和名称。
list_subscriptionsAPI Key / OAuth使用 channel_id(API Key)列出频道的公开订阅,或使用 mine=true(OAuth)列出你自己的订阅。
list_channel_membersOAuth列出你频道当前付费会员。需要已启用会员计划。
list_membership_levelsOAuth列出为你的频道配置的会员等级名称和级别。
revoke_oauth_tokenOAuth退出登录并从服务中永久删除已存储的 Google 凭据。

从源代码构建

在本地运行服务的说明。
git clone https://github.com/mrsknetwork/ytmcp.git
cd ytmcp
npm install
npm run build
cp .env.example .env # Set GOOGLE_API_KEY inside .env
node build/server/index.js

许可证

基于 MIT 许可证授权。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。