Youtube

Youtube

摘要: YouTube MCP Server 使AI模型能够通过标准化协议与YouTube内容(视频、频道、播放列表)进行交互,支持检索、搜索和多语言字幕访问。

smithery 徽章

YouTube MCP 服务器让 AI 语言模型能够与 YouTube 内容进行交互,支持视频信息检索、字幕管理、频道和播放列表操作。

安装

通过 Smithery 安装 (推荐)

npx -y @smithery/cli install @ZubeidHendricks/youtube --client claude

手动安装

npm install @modelcontextprotocol/server-youtube

配置

  1. 获取 YouTube API 密钥:

    • 前往 Google Cloud 控制台
    • 创建或选择项目
    • 启用 YouTube 数据 API v3
    • 创建 API 密钥
  2. 设置环境变量:

    • YOUTUBE_API_KEY: 您的 YouTube API 密钥
    • YOUTUBE_TRANSCRIPT_LANG: 字幕默认语言 (可选,默认为 'en')
  3. 将服务器添加到 MCP 客户端配置:

{
  "mcpServers": {
    "youtube": {
      "command": "npx",
      "args": ["-y", "@modelcontextprotocol/server-youtube"],
      "env": {
        "YOUTUBE_API_KEY": "<YOUR_API_KEY>"
      }
    }
  }
}

基本用法示例

视频操作

// 获取视频详情
const video = await youtube.videos.getVideo({ videoId: "video-id" });

// 获取视频字幕
const transcript = await youtube.transcripts.getTranscript({
  videoId: "video-id",
  language: "en"
});

// 搜索视频
const searchResults = await youtube.videos.searchVideos({
  query: "search term",
  maxResults: 10
});

频道操作

// 获取频道详情
const channel = await youtube.channels.getChannel({ channelId: "channel-id" });

// 列出频道中的视频
const videos = await youtube.channels.listVideos({
  channelId: "channel-id",
  maxResults: 50
});

播放列表操作

// 获取播放列表项
const playlistItems = await youtube.playlists.getPlaylistItems({
  playlistId: "playlist-id",
  maxResults: 50
});

// 获取播放列表详情
const playlist = await youtube.playlists.getPlaylist({ playlistId: "playlist-id" });

功能概览

  • 视频信息: 获取详情、统计数据、搜索视频
  • 字幕管理: 检索多语言字幕、带时间戳字幕、搜索字幕
  • 频道管理: 频道详情、列出视频、获取统计数据
  • 播放列表管理: 获取播放列表项、详情和相关字幕

有关更多详细信息,请访问 Smithery YouTube 服务器页面