关于 YouTube-MCP
YouTube-MCP 是基于 Java MCP SDK 和 Spring AI 构建的 YouTube MCP 服务,面向需要通过 MCP 搜索视频或查询频道、播放列表和视频信息的用户。它还可提取视频字幕。
主要功能
- 01按查询词搜索 YouTube 视频
- 02提取视频字幕
- 03获取视频详情、缩略图和公开评论
- 04查询频道信息、分区和播放列表
- 05查看频道公开活动
- 06列出地区视频类别
适用场景
- 01搜索与某个主题相关的视频
- 02提取视频字幕以供查阅
- 03获取频道播放列表及公开活动
MCP 相关
MCP 服务向 MCP 客户端提供 YouTube 搜索、字幕提取以及视频和频道数据查询工具。支持通过 SSE 或 stdio 连接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
YouTube-MCP
用于 YouTube 搜索、字幕稿等功能的 MCP(模型上下文协议)服务,使用 Java MCP SDK 和 Spring AI 构建。仅字幕稿提取使用 Javascript。
该项目已通过 MCP Review 认证:youtube-mcp-server
已公开的工具
- youtube_search:使用查询字符串搜索 YouTube 视频。
- youtube_transcript:通过视频 ID 获取 YouTube 视频的字幕稿。
- youtube_video_details:通过视频 ID 获取 YouTube 视频的详细信息。
- youtube_video_thumbnails:通过视频 ID 获取 YouTube 视频的缩略图 URL。
- youtube_video_comments:列出 YouTube 视频的评论(仅限公开评论)。
- youtube_channel_info:通过频道 ID 获取 YouTube 频道的信息。
- youtube_channel_playlists:通过频道 ID 列出 YouTube 频道的播放列表。
- youtube_channel_sections:通过频道 ID 列出频道版块(分区)。
- youtube_playlist_items:通过播放列表 ID 列出 YouTube 播放列表中的视频。
- youtube_activities:通过频道 ID 列出 YouTube 频道的活动(仅限公开活动)。
- youtube_video_categories:列出某个地区可用的视频类别。
视频
博客
YouTube-MCP:用于 YouTube 的模型上下文协议服务
运行 MCP 服务并从 MCP 主机连接到它
以 Docker 容器的形式运行 MCP 服务
Docker 镜像可在 Docker Hub 获取:https://hub.docker.com/r/codewizard01/youtube-mcp
前提条件
- Docker
docker run -e YOUTUBE_API_KEY=<your_api_key_here> -p 8085:8080 codewizard01/youtube-mcp:latest
这将在 8085 端口启动 MCP 服务。
然后将以下内容添加到 MCP 配置文件中,以通过 SSE 进行交互:
{
"youtube": {
"mcp_server": "http://localhost:8085"
}
}
从 IDE 运行 MCP 服务
前提条件
- Java 24
- Maven 3.8.1
- Node
- 克隆代码仓库
- 在 IDE 中打开项目
- 运行以下命令以构建项目
mvn clean install
npm install
- 运行以下命令以启动服务
mvn spring-boot:run
- 服务默认将在 8080 端口启动。你可以在 application.properties 文件中更改端口。
通过标准输入输出与 MCP 服务交互
在 application.properties 文件中启用以下注释掉的属性,以启用标准输入输出。
# For integration using stdio enable the below
#spring.ai.mcp.server.stdio=true
#spring.main.banner-mode=off
#spring.main.web-application-type=none
#logging.pattern.console=
#logging.file.name=youtube-mcp-spring.log
运行 mvn package 来构建 jar 文件。jar 文件将在 target 目录中生成。
现在,将以下内容添加到任意 MCP 主机(如 Claude 桌面版或 Github Copilot)的 MCP 配置文件中,以通过 stdio 进行交互:
"youtube-mcp": {
"command": "java",
"args": [
"-jar",
"/Users/codewiz/youtube-mcp/target/youtube-mcp-0.0.1-SNAPSHOT.jar"
],
"env": {
"YOUTUBE_API_KEY": "<your_api_key_here>"
}
}
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。