YouTube MCP Server
YouTube MCP Server
将 YouTube 带到 Claude Code 的 MCP 服务器 — 提供视频转录文本、搜索、元数据、频道信息、播放列表、评论、热门视频、互动分析、章节提取、SponsorBlock 集成以及最多重播热图。使用 YouTube Data API v3、youtube-transcript 和 SponsorBlock。
快速开始
第 1 步:获取您的 API 密钥
创建一个项目(或选择一个现有项目)
启用 YouTube Data API v3:
前往 API Library
点击 启用
创建 API 密钥:
前往 Credentials
点击 创建凭据 > API 密钥
复制密钥(在第 3 步中需要用到)
第 2 步:安装先决条件
第 3 步:安装 MCP 服务器
3.1 克隆仓库
git clone https://github.com/wynandw87/claude-code-youtube-mcp.git
cd claude-code-youtube-mcp3.2 安装依赖
macOS / Linux / Windows:
npm install注意: 依赖安装和服务器构建会在一个步骤中自动完成。
3.3 向 Claude Code 注册
选择您的安装范围:
范围 | 标志 | 谁可以使用 |
用户(推荐) |
| 您,在任何项目中 |
项目 |
| 克隆此仓库的任何人 |
本地 |
| 仅限当前目录 |
将 YOUR_API_KEY 替换为您的实际 YouTube Data API 密钥,并使用 dist/index.js 的完整路径。
提示: 要获取完整路径,请在克隆的目录中运行以下命令:
macOS/Linux:
echo "$(pwd)/dist/index.js"Windows:
echo %cd%\dist\index.js
macOS / Linux:
claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_API_KEY -- node /full/path/to/dist/index.jsWindows (CMD):
claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" -- node "C:\full\path\to\dist\index.js"Windows (PowerShell):
claude mcp add -s user youtube -e "YOUTUBE_API_KEY=YOUR_API_KEY" '--' node "C:\full\path\to\dist\index.js"替代方法:使用 npm 帮助程序(如果在环境中设置了 API 密钥)
export YOUTUBE_API_KEY=YOUR_API_KEY
npm run install:claude第 4 步:重启 Claude Code
关闭并重新打开 Claude Code 以使更改生效。
第 5 步:验证安装
claude mcp list您应该会看到 youtube 以 Connected 状态列出。
Related MCP server: YouTube MCP Server
功能
转录与字幕
获取转录文本(
get_transcript)- 获取带时间戳的完整视频转录文本,支持多种语言搜索转录文本(
search_transcript)- 查找关键词或短语在视频中出现的位置(带时间戳)干净转录文本(
get_clean_transcript)- 通过 SponsorBlock 移除赞助播报、片头、片尾和填充内容后的转录文本提取章节(
extract_chapters)- 从视频描述中解析章节时间戳
搜索与发现
搜索视频(
search_videos)- 完整的 YouTube 搜索,支持按日期、时长、类型和排序方式筛选频道内搜索(
search_within_channel)- 在特定创作者的频道中搜索视频获取热门视频(
get_trending_videos)- 按地区和类别获取当前热门视频获取频道视频(
get_channel_videos)- 获取频道最近上传的视频,按日期或观看次数排序
视频与频道信息
视频元数据(
get_video_metadata)- 标题、描述、时长、观看次数、点赞数、标签等频道信息(
get_channel_info)- 订阅者数量、视频数量、描述、国家/地区播放列表项目(
get_playlist_items)- 播放列表中的所有视频及其位置和元数据
分析与互动
计算互动指标(
calculate_engagement)- 根据公开统计数据计算点赞率、评论率和互动率最多重播(
get_most_replayed)- 显示观众最常重看哪些部分的热图数据视频评论(
get_video_comments)- 热门评论及其点赞数和回复数
实用工具
解析 YouTube URL(
parse_youtube_url)- 从任意 YouTube URL 格式中提取视频/频道/播放列表 ID
使用方法
安装后,使用触发短语来调用 YouTube 工具:
触发词 | 工具 | 示例 |
| 获取转录文本 | “获取这个视频的 YouTube 转录文本” |
| 搜索视频 | “在 YouTube 上搜索 React 教程” |
| 视频元数据 | “获取这个视频的 YouTube 元数据” |
| 频道信息 | “获取 @ThePrimeagen 的 YouTube 频道信息” |
| 播放列表项目 | “列出这个 YouTube 播放列表中的视频” |
| 视频评论 | “获取这个视频的 YouTube 评论” |
| 热门视频 | “美国 YouTube 上正在流行什么?” |
| 提取章节 | “从这个 YouTube 视频中提取章节” |
| 计算互动指标 | “计算这个视频的 YouTube 互动率” |
| 最多重播 | “显示这个 YouTube 视频中最多重播的部分” |
| 干净转录文本 | “获取没有赞助播报的干净 YouTube 转录文本” |
| 搜索转录文本 | “在 YouTube 转录文本中搜索 'authentication'” |
或者自然地提问:
“获取这个 YouTube 视频的转录文本并总结它”
“这个视频最多重播的部分有哪些?”
“在这个频道上查找关于 TypeScript 的近期视频”
“这个视频有多少观看次数和点赞数?”
“获取这个视频的评论并总结情感倾向”
“给我展示这个教程的章节”
“获取没有赞助播报的干净转录文本”
“YouTube 上游戏类别现在有什么热门内容?”
工具参考
parse_youtube_url
解析任意 YouTube URL 格式并提取标识符。无需 API 密钥。
参数:
url(string,必需)- 任意 YouTube URL 或视频 ID
支持的格式: youtube.com/watch?v=、youtu.be/、/shorts/、/embed/、/playlist?list=、/channel/、/@handle、/c/、/user/、裸视频 ID
get_transcript
获取 YouTube 视频的完整转录文本/字幕。无需 API 密钥。
参数:
url(string,必需)- YouTube 视频 URL 或视频 IDlang(string,可选)- 字幕的语言代码(默认:"en")
search_transcript
在视频的转录文本中搜索关键词或短语。
参数:
url(string,必需)- YouTube 视频 URL 或视频 IDquery(string,必需)- 要搜索的关键词或短语lang(string,可选)- 字幕的语言代码(默认:"en")
extract_chapters
从视频的描述中提取章节时间戳。
参数:
url(string,必需)- YouTube 视频 URL 或视频 ID
get_clean_transcript
获取通过 SponsorBlock 移除赞助播报、片头、片尾和填充内容后的转录文本。
参数:
url(string,必需)- YouTube 视频 URL 或视频 IDlang(string,可选)- 字幕的语言代码(默认:"en")
get_most_replayed
获取“最多重播”热图数据,显示观众最常重看哪些部分。
参数:
url(string,必需)- YouTube 视频 URL 或视频 ID
注意: 大约需要 5万+ 次观看次数才会有热图数据可用。
search_videos
使用完整筛选功能搜索 YouTube。
参数:
query(string,必需)- 搜索查询max_results(number,可选)- 结果数量,1-50(默认:10)order(string,可选)-"relevance"、"date"、"viewCount"、"rating"(默认:"relevance")duration(string,可选)-"short"(<4 分钟)、"medium"(4-20 分钟)、"long"(>20 分钟)upload_date(string,可选)-"hour"、"day"、"week"、"month"、"year"type(string,可选)-"video"、"channel"、"playlist"(默认:"video")
get_video_metadata
获取 YouTube 视频的详细元数据。
参数:
url(string,必需)- YouTube 视频 URL 或视频 ID
返回内容: 标题、描述、频道、时长、观看/点赞/评论数量、标签、类别、缩略图、直播状态等。
get_channel_info
获取 YouTube 频道信息。
参数:
url(string,必需)- YouTube 频道 URL、@handle 或频道 ID
返回内容: 标题、描述、订阅者/视频/观看数量、国家/地区、自定义 URL 和缩略图。
get_playlist_items
获取 YouTube 播放列表中的所有视频。
参数:
url(string,必需)- YouTube 播放列表 URL 或播放列表 IDmax_results(number,可选)- 项目数量,1-50(默认:25)
get_channel_videos
获取 YouTube 频道的近期视频。
参数:
url(string,必需)- YouTube 频道 URL、@handle 或频道 IDmax_results(number,可选)- 视频数量,1-50(默认:25)order(string,可选)-"date"、"viewCount"(默认:"date")
get_trending_videos
获取当前热门/流行的 YouTube 视频。
参数:
region_code(string,可选)- ISO 3166-1 alpha-2 国家/地区代码(默认:"US")category_id(string,可选)- YouTube 类别 ID(例如音乐为"10"、游戏为"20"、科学与技术为"28")max_results(number,可选)- 结果数量,1-50(默认:10)
search_within_channel
在特定 YouTube 频道内搜索视频。
参数:
url(string,必需)- YouTube 频道 URL、@handle 或频道 IDquery(string,必需)- 搜索查询max_results(number,可选)- 结果数量,1-50(默认:10)
get_video_comments
获取 YouTube 视频的顶级评论。
参数:
url(string,必需)- YouTube 视频 URL 或视频 IDmax_results(number,可选)- 评论数量,1-100(默认:20)order(string,可选)-"relevance"、"time"(默认:"relevance")
calculate_engagement
计算 YouTube 视频的互动指标。
参数:
url(string,必需)- YouTube 视频 URL 或视频 ID
返回内容: 观看次数、点赞数、评论数、点赞率、评论率和整体互动率。
工作原理
此 MCP 服务器通过 stdio 传输连接到 Claude Code,并提供 15 个工具:
工具 | 数据来源 | 需要 API 密钥? |
| 本地解析 | 否 |
| youtube-transcript 库 | 否 |
| youtube-transcript 库 | 否 |
| youtube-transcript + SponsorBlock API | 否 |
| YouTube 页面(Innertube) | 否 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
| YouTube Data API v3 | 是 |
注意: 5 个工具无需 API 密钥即可运行(字幕、SponsorBlock、热图、URL 解析)。其余 10 个需要 YouTube Data API v3 密钥。
配置
环境变量
变量 | 必需 | 默认值 | 说明 |
| 是 | — | YouTube Data API v3 密钥 |
| 否 |
| API 超时时间(毫秒) |
YouTube API 配额
YouTube Data API v3 的每日配额为 10,000 个单位。每个工具消耗的配额不同:
操作 | 每次调用费用 |
| 100 个单位 |
| 1 个单位 |
| 1 个单位 |
| 1 个单位 |
| 1 个单位 |
| 1 个单位 |
提示: 搜索操作最耗费配额。如果只需获取最近上传的视频,请使用
get_channel_videos(1 个单位)而不是search_within_channel(100 个单位)。
故障排除
修复 API 密钥
如果你输入了错误的 API 密钥,请将其移除并重新安装:
claude mcp remove youtube然后使用上面第 3.3 步中的命令重新安装(使用你最初安装时使用的相同范围)。
MCP 服务器未显示
检查服务器是否已安装:
claude mcp list如果未列出,请按照第 3 步进行安装。
服务器无法启动
在 Google Cloud Console 中验证你的 API 密钥是否有效
检查 YouTube Data API 是否已启用:
前往 API Library
它应该显示“已启用”
检查 Node.js 版本(需要 18+):
node --version确保服务器已构建 — 如果
dist/index.js缺失,请重新运行npm install
连接错误
检查
dist/index.js是否存在 — 如果不存在,请运行npm install在
claude mcp add命令中确认路径是绝对路径进行任何配置更改后,重启 Claude Code
配额超限
如果你看到“quotaExceeded”错误:
等到太平洋时间午夜(配额每天重置)
使用不同的 API 密钥
优先使用低成本工具(
get_video_metadata1 个单位)而不是搜索工具(100 个单位)
字幕不可用
有些视频禁用了字幕。get_transcript 工具会返回明确的错误消息。请尝试:
使用不同的语言代码(例如
lang: \"es\")即使没有手动字幕,自动生成的字幕也可能可用
超时错误
对于慢速连接,请增大 YOUTUBE_TIMEOUT 环境变量:
claude mcp add -s user youtube -e YOUTUBE_API_KEY=YOUR_KEY -e YOUTUBE_TIMEOUT=60000 -- node /path/to/dist/index.js查看当前配置
claude mcp list贡献
欢迎提交拉取请求!请保持简单且对初学者友好。
许可证
MIT
为 Claude Code 社区而制作
This server cannot be deployed
Maintenance
Related MCP Connectors
YouTube for AI agents: transcripts, comments, video stats, channel monitor, Shorts captions.
Your YouTube library in Claude, ChatGPT and Cursor: transcripts, breakdowns, summaries, search.
Your YouTube library in Claude, ChatGPT and Cursor: transcripts, breakdowns, summaries, search.
YouTube transcripts, comments, video details, heatmaps, search, channels and playlists.
Related MCP Servers
- FlicenseAqualityDmaintenanceIntegrates YouTube with Claude Code, enabling video transcript retrieval, search, metadata extraction, channel info, playlists, comments, trending videos, engagement analytics, chapter extraction, SponsorBlock integration, and most-replayed heatmaps.1514 npm16-
- FlicenseNot gradedqualityCmaintenanceEnables bringing YouTube to Claude Code with transcripts, search, metadata, channel info, playlists, comments, trending videos, engagement analytics, chapter extraction, SponsorBlock integration, and most-replayed heatmaps.14 npm-
- FlicenseNot gradedqualityCmaintenanceEnables bringing YouTube into Claude Code for video transcripts, search, metadata, channel info, playlists, comments, trending videos, engagement analytics, chapters, SponsorBlock clean transcripts, and most-replayed heatmaps.14 npm-
- FlicenseNot gradedqualityCmaintenanceBrings YouTube data to Claude Code, enabling video transcripts, search, metadata, channel info, playlists, comments, trending videos, engagement analytics, chapters, SponsorBlock integration, and most-replayed heatmaps.14 npm-