Runnable YouTube MCP Server

Runnable YouTube MCP Server

site icon
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

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。