关于 Youtube
Youtube 是一个 MCP 服务,为 AI Agent 提供 YouTube 字幕、视频与频道搜索、频道视频列表以及带时间戳的视频截图。它无需 Google API 密钥或 OAuth 设置,并可选择从字幕中移除赞助片段。
主要功能
- 01获取带时间戳或纯文本字幕
- 02截取指定时间点的视频画面
- 03按相关性、日期、评分或观看量搜索视频
- 04查找频道并列出其视频
- 05可选移除赞助片段
适用场景
- 01以专家演讲和技术视频作为研究依据
- 02按主题查找视频并提取字幕
- 03将关键视频画面与字幕上下文结合
- 04回答关于视频特定片段的问题
MCP 相关
该服务向 MCP 客户端提供 YouTube 字幕、搜索、频道和视频画面工具。可通过其 npm 包接入,且不需要 Google API 凭据。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
5收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| videoUrl | string | 是 | 要从中获取文字稿的 YouTube 视频完整 URL。这是通常用于在浏览器中观看视频的标准 URL(例如,'https://www.youtube.com/watch?v=dQw4w9WgXcQ')。 |
| chunkSize | number | 否 | 可选:每个文字稿分块的最大字符数。若提供此值,文字稿将按该大小分块。适合将很长的文字稿拆分为较小且易于处理的部分。 |
| chunkBySilence | boolean | 否 | 可选:若为 true,文字稿将根据音频中的静音片段分块。这有助于按更自然的对话或主题界限分段。 |
| silenceThreshold | number | 否 | 可选:当 chunkBySilence 为 true 时,指定视为分块间隔的最短静音时长(毫秒)。值越大,创建新块所需的停顿越长。 |
| skipSponsor | boolean | 否 | 可选:如果为 true,则使用 SponsorBlock API 从转录文本中移除赞助/广告片段。获取赞助时间戳,并过滤掉位于赞助片段内的转录文本。 |
| plainText | boolean | 否 | 可选:如果为 true,则将完整转录文本作为单个纯文本字符串返回,不含时间戳数据。与默认的带时间戳格式相比,这种格式占用的上下文更少,更适合用于摘要。如果之后需要时间戳,后续调用会使用缓存。 |
详细介绍
@inlustris/youtube-mcp
让 AI Agent 以 YouTube 上的优质内容为依据——无需 API 密钥,零配置。
YouTube 是世界上最大的专业知识库,汇集了教程、演讲、评测和深度解析。但 AI Agent 无法观看视频。
这个 MCP 服务弥补了这一差距。它通过简单的工具,为你的 Agent 提供 YouTube 字幕、搜索、频道数据和视频截图。无需 Google API 密钥,无需 OAuth,无需设置。
基于 FastMCP 和 youtubei.js 构建。
为什么用 YouTube 为 AI 提供依据?
网页搜索结果杂乱无章。YouTube 内容经过排序、评审和筛选——高播放量的视频、值得信赖的创作者,以及带时间戳的字幕,使其非常适合用作大模型上下文。你的 Agent 无需抓取论坛或博客,就能从相关视频中提取完整字幕、跨频道搜索,或截取特定时刻的画面。
这不是另一个需要你维护的“AI 技能”,而是一个安装后即可使用的 npm 包。
你将获得
| 工具 | 用途 |
|---|---|
get_transcript | 获取带时间戳的视频字幕,或通过 plainText 获取纯文本。可选择通过 skipSponsor 去除赞助内容片段。字幕会缓存在内存中,后续获取速度极快。 |
get_video_frame | 截取任意时间戳的画面。yt-dlp 可用时提供完整画质;否则会自动切换为备用方案。 |
search_videos | 搜索 YouTube,可按相关性、日期、评分和播放量排序。 |
search_channels | 根据查询查找频道。 |
get_channel_videos | 列出频道中的所有视频。 |
安装
npm install -g @inlustris/youtube-mcp
添加到任何 MCP 客户端:
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": ["-y", "@inlustris/youtube-mcp@latest"]
}
}
}
兼容 Claude Desktop、Cursor、opencode、VS Code Copilot 及任何兼容 MCP 的 Agent。
全画质截图(可选)
get_video_frame 开箱即用,可使用 YouTube 故事板截图(320×180)。如需全分辨率截图(720p、1080p、4K),请安装系统工具:
brew install yt-dlp ffmpeg
该工具会自动检测 yt-dlp 并升级截图质量,无需更改配置。
SponsorBlock
向 get_transcript 传入 skipSponsor: true。它会从 SponsorBlock API 获取赞助内容的时间戳(无需身份验证,免费),并从字幕中移除赞助内容。非常适合获取干净、无广告的视频上下文。
使用场景
- 研究 Agent:提取专家演讲、会议演讲或技术深度解析的字幕,无需浏览博客文章。
- 内容分析:按主题搜索相关 YouTube 内容,然后大规模提取字幕。
- 视觉依据:在关键时刻截取画面,并结合字幕进行多模态理解。
- 学习工具:让用户针对特定视频时间戳提问,并获得有依据的回答。
开发
npm install
npm run dev # hot-reload
npm test # 31 tests
npm run build # production bundle
src/
├── index.ts
├── server/server.ts
├── core/
│ ├── tools.ts
│ ├── resources.ts
│ └── services/
│ ├── youtube-service.ts
│ ├── sponsorblock-service.ts
│ └── screenshot-service.ts
└── __tests__/
许可证
MIT
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。