
Runnable YouTube MCP Server

2025.04.17
0
TypeScript视频管理自动化工具YouTube API内容生成娱乐功能
youtube-mcp-server 是一个 FastMCP 服务器,专为 YouTube 设计,提供统一的视频、频道和播放列表信息访问、下载和管理工具,适用于备忘录代理和自动化工作流。
View on GitHub
Overview
基本能力
产品定位
youtube-mcp-server 是一个专为 YouTube 设计的 FastMCP 服务器,旨在提供统一的视频、频道和播放列表信息访问、下载和管理工具,适用于备忘录代理和自动化工作流。
核心功能
- 统一访问 YouTube 视频、频道和播放列表信息
- 下载各种格式和质量的视频/音频流
- 提取和处理视频缩略图
- 管理播放列表内容(添加、删除、重新排序)
- 管理视频隐私状态(公开/私有/未列出)
- 列出可用的字幕语言
- 专为与备忘录代理和自动化工作流集成而设计
- 可扩展、可维护且完全开源
适用场景
- 自动化视频信息检索和摘要生成
- 视频下载和管理自动化
- 播放列表内容管理
- 视频隐私状态管理
工具列表
工具名称 | 描述 | 状态 |
---|---|---|
describeVideo | 获取视频信息(可选部分) | ✅ |
getDownloadOptions | 获取可用的下载格式/质量 | ❌ |
downloadVideo | 下载视频/音频流 | ❌ |
extractThumbnail | 提取和处理视频缩略图 | ❌ |
listSubtitleLanguages | 获取视频可用的字幕语言 | ❌ |
manageVideoStatus | 管理视频隐私状态 | ❌ |
describeChannel | 获取公共频道信息 | ❌ |
describePlaylist | 获取公共播放列表信息 | ❌ |
managePlaylistItems | 播放列表内容管理(添加/删除/重新排序) | ❌ |
目前只有
describeVideo
经过测试并正常工作。其他工具已实现但未完全测试。
常见问题解答
- 为什么选择这个项目? 大多数可用的 YouTube MCP 服务器要么不可维护,要么无法编译,或者仅在 Python 中实现且仅提供基本的视频下载功能。该项目旨在解决这些问题,提供一个健壮、可扩展且对开发者友好的 YouTube MCP 服务器。
使用教程
使用依赖
- Node.js 18+
- YouTube Data API v3 密钥
安装教程
npm install youtube-mcp-server
环境变量
创建一个 .env
文件或在环境中设置以下变量:
YOUTUBE_API_KEY=YOUR_YOUTUBE_API_KEY
DOWNLOAD_BASE_DIR=./downloads
运行开发环境
npm run dev
运行生产环境
npm run build
npm start
MCP 集成示例
{
"mcpServers": {
"youtube": {
"command": "npx",
"args": [
"tsx",
"/PATH/TO/YOUR_PROJECT/src/server.ts"
],
"env": {
"YOUTUBE_API_KEY": "YOUR_YOUTUBE_API_KEY"
}
}
}
}
调试方式
安装完成后,可以通过以下命令启动开发服务器进行调试:
npm run dev