使用说明

项目简介

本项目 'YouTube to Google Sheets MCP Server' 是一个基于 Model Context Protocol (MCP) 构建的后端服务,旨在扩展大型语言模型(LLM)的能力,使其能够方便地搜索YouTube视频并将结果存储到Google Sheets。通过集成此MCP服务器,AI助手(如Claude)可以执行诸如“搜索关于特定主题的YouTube视频并保存到我的电子表格”之类的任务,从而实现信息检索和数据记录的自动化。

主要功能点

  • YouTube视频搜索: 利用YouTube Data API v3,根据用户提供的关键词搜索相关的YouTube视频。
  • Google Sheets 自动保存: 自动将YouTube搜索结果(包括视频标题、URL、频道名称和发布日期)保存到指定的Google Sheets电子表格中。
  • 可配置搜索参数: 允许用户配置搜索查询关键词和返回的最大结果数量。
  • 结构化数据输出: 以清晰的格式将视频信息整理并写入Google Sheets,方便后续的数据分析和使用。

安装步骤

  1. 安装 NPM 包: 在你的项目目录中,使用 npm 安装 '@rikukawa/youtube-sheets-server' 包:

    npm install @rikukawa/youtube-sheets-server
  2. 配置 Google API 密钥:

    • YouTube Data API v3:
      • 访问 Google Cloud Console 并创建一个新项目。
      • 在项目中启用 YouTube Data API v3
      • 创建 API 密钥 用于访问 YouTube Data API。
    • Google Sheets API:
      • 在同一个 Google Cloud 项目中启用 Google Sheets API
      • 创建 服务账户
      • 下载服务账户的 密钥文件 (JSON 格式),并将其重命名为 'credentials.json' 放置在服务器根目录下(与 'src' 目录同级)。
      • 将你的目标 Google Sheet 共享给服务账户的电子邮件地址,以授予写入权限。

服务器配置

为了让 MCP 客户端(如支持 MCP 协议的 AI 助手)能够连接并使用此 MCP 服务器,你需要在 MCP 客户端的配置文件中添加服务器配置信息。以下是一个示例配置,你需要根据实际情况修改:

{
  "mcpServers": {
    "youtube-sheets": {
      "command": "node",
      "args": ["path/to/youtube-sheets-server/build/index.js"],
      "env": {
        "YOUTUBE_API_KEY": "your-youtube-api-key",
        "SPREADSHEET_ID": "your-spreadsheet-id"
      },
      "disabled": false,
      "alwaysAllow": []
    }
  }
}

配置参数说明:

  • '"youtube-sheets"': 服务器名称,可以自定义,用于在 MCP 客户端中引用。
  • '"command": "node"': 启动服务器的命令,这里使用 Node.js 运行环境。
  • '"args": ["path/to/youtube-sheets-server/build/index.js"]': 启动命令的参数,指向服务器入口文件 'index.js' 的构建后路径。你需要将 'path/to/youtube-sheets-server' 替换为你的 'youtube-sheets-server' 包的实际安装路径。通常如果你全局安装了 '@rikukawa/youtube-sheets-server',并且 'index.js' 文件位于包的 'build' 目录下,则可能需要调整路径。如果直接在项目中使用,则根据你的项目结构调整路径。
  • '"env"': 环境变量配置。
    • '"YOUTUBE_API_KEY": "your-youtube-api-key"': 必须配置,替换为你在 Google Cloud Console 中创建的 YouTube Data API 密钥。
    • '"SPREADSHEET_ID": "your-spreadsheet-id"': 必须配置,替换为你的 Google Sheets 电子表格的 ID。电子表格 ID 通常可以在电子表格 URL 中找到。
  • '"disabled": false': 设置为 'false' 表示启用该服务器。
  • '"alwaysAllow": []': 允许始终访问的工具列表,这里为空表示需要经过用户授权才能调用工具。

重要提示:

  • 确保 'credentials.json' 文件(Google Sheets 服务账户密钥)与 'index.js' 文件位于同一目录下或者可以通过相对路径访问到。
  • 环境变量 'YOUTUBE_API_KEY' 和 'SPREADSHEET_ID' 必须正确配置,服务器才能正常连接到 YouTube API 和 Google Sheets API。
  • 'args' 中的路径需要根据你的实际部署环境进行调整,确保指向正确的 'index.js' 文件。

基本使用方法

配置完成后,你可以在支持 MCP 协议的 AI 助手中使用以下指令来调用该服务器的功能。例如,你可以对 AI 助手说:

“请使用 youtube-sheets 服务器搜索关于 'ChatGPT usage' 的 YouTube 视频,并返回 10 个结果。”

AI 助手会将你的指令转换为 MCP 请求发送到 'youtube-sheets' 服务器。服务器会执行 YouTube 搜索,并将结果保存到你配置的 Google Sheets 中。AI 助手最终会返回操作结果的文本描述,并可能包含搜索到的视频列表等信息。

工具名称: 'search_and_save'

工具参数:

  • 'query' (string, 必填): YouTube 搜索关键词。
  • 'maxResults' (number, 可选, 默认值: 10, 范围: 1-50): 希望返回的最大视频数量。

信息

分类

生产力应用