Skip to main content
Glama
aima4703

YouTube MCP Server

by aima4703

YouTube MCP Server

将 YouTube 带入 Claude Code 的 MCP 服务器 — 视频转录文本、搜索、元数据、频道信息、播放列表、评论、热门视频、互动分析、章节提取、SponsorBlock 集成以及最多重播热图。使用 YouTube Data API v3、youtube-transcript 和 SponsorBlock。

快速开始

第 1 步:获取你的 API 密钥

  1. 前往 Google Cloud Console

  2. 创建项目(或选择现有项目)

  3. 启用 YouTube Data API v3

  4. 创建 API 密钥:

  5. 复制密钥(第 3 步中会用到)

第 2 步:安装先决条件

第 3 步:安装 MCP 服务器

3.1 克隆仓库

git clone https://github.com/wynandw87/claude-code-youtube-mcp.git
cd claude-code-youtube-mcp

3.2 安装依赖

macOS / Linux / Windows:

npm install

注意: 依赖项的安装和服务器的构建会在一步中自动完成。

3.3 使用 Claude Code 注册

选择你的安装范围:

范围

标志

谁可以使用

用户(推荐)

-s user

你,在任何项目中

项目

-s project

克隆此仓库的任何人

本地

-s local

仅在当前目录中

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.js

Windows (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-research

功能

转录文本与字幕

  • 获取转录文本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 URLparse_youtube_url)— 从任意 YouTube URL 格式中提取视频/频道/播放列表 ID


使用方法

安装完成后,使用触发短语来调用 YouTube 工具:

触发词

工具

示例

youtube transcript

Get Transcript

“获取这个视频的 youtube 转录文本”

youtube search

Search Videos

“youtube 搜索 React 教程”

youtube metadata

Video Metadata

“获取这个视频的 youtube 元数据”

youtube channel

Channel Info

“获取 @ThePrimeagen 的 youtube 频道信息”

youtube playlist

Playlist Items

“列出这个 youtube 播放列表中的视频”

youtube comments

Video Comments

“获取这个视频的 youtube 评论”

youtube trending

Trending Videos

“youtube 在美国有哪些热门内容?”

youtube chapters

Extract Chapters

“从这个 youtube 视频中提取章节”

youtube engagement

Calculate Engagement

“计算这个视频的 youtube 互动率”

youtube most replayed

Most Replayed

“显示这个 youtube 视频最多重播的部分”

youtube clean transcript

Clean Transcript

“获取没有赞助商的干净 youtube 转录文本”

youtube search transcript

Search Transcript

“在 youtube 转录文本中搜索“身份验证””

或者自然地提问:

  • “获取这个 YouTube 视频的转录文本并总结一下”

  • “这个视频最多重播的部分是哪些?”

  • “查找这个频道上最近关于 TypeScript 的视频”

  • “这个视频有多少观看次数和点赞数?”

  • “获取这个视频的评论并总结情感倾向”

  • “给我看看这个教程的章节”

  • “获取没有赞助商口播的干净转录文本”

  • “目前 YouTube 游戏类有哪些热门内容?”


工具参考

parse_youtube_url

解析任意 YouTube URL 格式并提取标识符。无需 API 密钥。

参数:

  • url(字符串,必需)— 任意 YouTube URL 或视频 ID

支持的格式: youtube.com/watch?v=youtu.be//shorts//embed//playlist?list=/channel//@handle/c//user/、纯视频 ID

get_transcript

获取 YouTube 视频的完整转录文本/字幕。无需 API 密钥。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

  • lang(字符串,可选)— 字幕的语言代码(默认:"en"

在视频的转录文本中搜索关键词或短语。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

  • query(字符串,必需)— 要搜索的关键词或短语

  • lang(字符串,可选)— 字幕的语言代码(默认:"en"

extract_chapters

从视频描述中提取章节时间戳。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

get_clean_transcript

获取通过 SponsorBlock 移除赞助商口播、片头、片尾和填充内容的转录文本。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

  • lang(字符串,可选)— 字幕的语言代码(默认:"en"

get_most_replayed

获取“最多重播”热图数据,显示观众最常重看哪些片段。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

注意: 需要大约 50K+ 次观看才能提供热图数据。

使用完整筛选功能搜索 YouTube。

参数:

  • query(字符串,必需)— 搜索查询

  • max_results(数字,可选)— 结果数量,1-50(默认:10

  • order(字符串,可选)— "relevance""date""viewCount""rating"(默认:"relevance"

  • duration(字符串,可选)— "short"(<4 分钟)、"medium"(4-20 分钟)、"long"(>20 分钟)

  • upload_date(字符串,可选)— "hour""day""week""month""year"(默认:"week"

  • type(字符串,可选)— "video""channel""playlist"(默认:"video"

get_video_metadata

获取 YouTube 视频的详细元数据。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

返回: 标题、描述、频道、时长、观看/点赞/评论数、标签、类别、缩略图、直播状态等。

get_channel_info

获取 YouTube 频道信息。

参数:

  • url(字符串,必需)— YouTube 频道 URL、@handle 或频道 ID

返回: 标题、描述、订阅者/视频/观看数、国家/地区、自定义 URL 和缩略图。

get_playlist_items

获取 YouTube 播放列表中的所有视频。

参数:

  • url(字符串,必需)— YouTube 播放列表 URL 或播放列表 ID

  • max_results(数字,可选)— 项目数量,1-50(默认:25

get_channel_videos

获取 YouTube 频道最近发布的视频。

参数:

  • url(字符串,必需)— YouTube 频道 URL、@handle 或频道 ID

  • max_results(数字,可选)— 视频数量,1-50(默认:25

  • order(字符串,可选)— "date""viewCount"(默认:"date"

get_trending_videos

获取当前热门/流行的 YouTube 视频。

参数:

  • region_code(字符串,可选)— ISO 3166-1 alpha-2 国家/地区代码(默认:"US"

  • category_id(字符串,可选)— YouTube 类别 ID(例如,"10" 代表音乐,"20" 代表游戏,"28" 代表科学与技术)

  • max_results(数字,可选)— 结果数量,1-50(默认:10

在特定 YouTube 频道内搜索视频。

参数:

  • url(字符串,必需)— YouTube 频道 URL、@handle 或频道 ID

  • query(字符串,必需)— 搜索查询

  • max_results(数字,可选)— 结果数量,1-50(默认:10

get_video_comments

获取 YouTube 视频的顶层评论。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

  • max_results(数字,可选)— 评论数量,1-100(默认:20

  • order(字符串,可选)— "relevance""time"(默认:"relevance"

calculate_engagement

计算 YouTube 视频的互动指标。

参数:

  • url(字符串,必需)— YouTube 视频 URL 或视频 ID

返回: 观看次数、点赞数、评论数、点赞率、评论率和总体互动率。


工作原理

此 MCP 服务器通过 stdio 传输与 Claude Code 连接,并提供 15 个工具:

工具

数据源

需要 API 密钥?

parse_youtube_url

本地解析

get_transcript

youtube-transcript 库

search_transcript

youtube-transcript 库

get_clean_transcript

youtube-transcript + SponsorBlock API

get_most_replayed

YouTube 页面(Innertube)

extract_chapters

YouTube Data API v3

search_videos

YouTube Data API v3

get_video_metadata

YouTube Data API v3

get_channel_info

YouTube Data API v3

get_playlist_items

YouTube Data API v3

get_channel_videos

YouTube Data API v3

get_trending_videos

YouTube Data API v3

search_within_channel

YouTube Data API v3

get_video_comments

YouTube Data API v3

calculate_engagement

YouTube Data API v3

注意: 5 个工具无需 API 密钥即可使用(转录、SponsorBlock、热图、URL 解析)。其余 10 个需要 YouTube Data API v3 密钥。


配置

环境变量

变量

必需

默认值

描述

YOUTUBE_API_KEY

YouTube Data API v3 密钥

YOUTUBE_TIMEOUT

30000

API 超时时间(毫秒)

YouTube API 配额

YouTube Data API v3 每日配额为 10,000 个单位。每个工具使用的配额不同:

操作

每次调用成本

search (search_videos, search_within_channel)

100 单位

videos.list (get_video_metadata, get_trending, calculate_engagement)

1 单位

channels.list (get_channel_info, get_channel_videos)

1 单位

playlists.list (get_playlist_items)

1 单位

playlistItems.list (get_playlist_items, get_channel_videos)

1 单位

commentThreads.list (get_video_comments)

1 单位

提示: 搜索操作的开销最大。如果只需要最近上传的视频,请使用 get_channel_videos(1 单位)而不是 search_within_channel(100 单位)。


故障排除

修复 API 密钥

如果您输入了错误的 API 密钥,请移除并重新安装:

claude mcp remove youtube

然后使用上面步骤 3.3 中的命令重新安装(使用您最初安装时使用的相同作用域)。

MCP 服务器未显示

检查服务器是否已安装:

claude mcp list

如果未列出,请按照步骤 3 安装。

服务器无法启动

  1. 验证您的 API 密钥Google Cloud Console 中有效

  2. 检查 YouTube Data API 是否已启用

  3. 检查 Node.js 版本(需要 18+):

    node --version
  4. 确保服务器已构建 — 如果缺少 dist/index.js,请重新运行 npm install

连接错误

  1. 检查 dist/index.js 是否存在 — 如果不存在,请运行 npm install

  2. 在您的 claude mcp add 命令中验证路径是绝对路径

  3. 在更改任何配置后重启 Claude Code

配额已超出

如果您看到“quotaExceeded”错误:

  • 等到太平洋时间午夜(配额每日重置)

  • 使用不同的 API 密钥

  • 优先使用低成本工具(get_video_metadata 1 单位)而不是搜索工具(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

贡献

欢迎提交 Pull Request!请保持简单且对初学者友好。

许可证

MIT


为 Claude Code 社区而制作

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • F
    license
    A
    quality
    D
    maintenance
    Integrates 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.
    15
    38
    6
  • A
    license
    A
    quality
    D
    maintenance
    Enables YouTube integration with Claude Code, including video search, metadata retrieval, transcript fetching, channel exploration, and trending videos.
    8
    1
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    Enables Claude to interact with YouTube Data API for searching videos, channels, and playlists, and retrieving details and playlists.
    38
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables 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.
    38

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/aima4703/youtube-mcp-remote'

If you have feedback or need assistance with the MCP directory API, please join our Discord server