SuperAPI AI 工具集

mcp-google-drive

mcp-google-drive 是一个面向 Google Drive API 的 MCP 服务器,让 AI 应用可以用自然语言操作 Google Drive。它提供 21 个工具,覆盖搜索与元数据、文件夹与移动、上传与下载、Docs/Sheets/Slides 导出、回收站、共享与评论等操作。支持 Claude、Cursor、Codex 等 AI 客户端,可通过对话完成 OAuth 连接,无需配置文件或重启。删除默认进入可恢复的回收站,永久删除为独立工具;文档以整体文件形式移动、复制、导出和转换,不编辑内部文本。需要 Node.js 20+ 和 Google 账号,使用 OAuth 2.0 授权。

访问官网

工具介绍

用途

mcp-google-drive 是一个 MCP(Model Context Protocol)服务器,用于连接 Google Drive API,让 AI 应用以自然语言方式操作 Google Drive。它面向 Claude、Cursor、Codex 及其他 AI 客户端,可查看 My Drive 和共享云端硬盘。

主要能力

服务器共提供 21 个工具,涵盖以下方面:

  • 搜索与元数据:查找文件、查看文件位置与所有者等信息。
  • 文件夹与移动:创建文件夹、移动文件。
  • 上传与下载:上传内容、下载文件。
  • 导出:将 Google Docs、Sheets、Slides 导出为其他格式(如 Markdown)。
  • 回收站:将文件移入可恢复的回收站,以及恢复误删文件。
  • 共享与评论:共享文件或文件夹、添加评论、列出并解决评论、撤销访问权限。

设计上的几个特点:

  • 回收站优先:“删除”默认指可恢复的回收站,永久删除是单独的工具,不会被误选。
  • 文档保持完整:Docs、Sheets、Slides 以整体文件形式移动、复制、导出和转换,服务器不会编辑文档内部的文本或单元格。
  • 作用域可选:drive.readonly 覆盖所有读取操作;drive.file 仅限应用创建的文件;完整工具集需要 drive 作用域。
  • 写入不重放:网络和 5xx 错误后的重试仅适用于读取,复制、上传或新建文件夹不会在不确定失败后被重复执行。

使用方式

需要 Node.js 20+ 和 Google 账号。安装时不需要凭据,服务器可从对话中连接。

基本流程:

  1. 将服务器添加到 AI 应用。
  2. 说“connect Google Drive”,助手会引导创建 OAuth 客户端并批准访问,无需编辑配置文件。
  3. 提出只读问题开始使用,例如:查找我 Drive 中的项目路线图文档,导出为 Markdown 并总结。

在桌面应用中:打开 Settings → MCP servers,选择 Add server,选择 STDIO,输入命令 npx -y @a1-x-tech/mcp-google-drive@latest 以及环境变量 GOOGLE_DRIVE_CLIENT_ID、GOOGLE_DRIVE_CLIENT_SECRET 和 GOOGLE_DRIVE_REFRESH_TOKEN。保存后重启。

在 IDE 扩展中:打开齿轮菜单 → MCP servers,选择 Add server,选择 STDIO,输入相同命令和环境变量。保存后重启扩展。

命令行方式可参考 Codex MCP 文档和 Claude Code MCP 文档。

Claude Desktop 当前官方路径是 Settings → Extensions。自定义桌面扩展可打开 Advanced settings → Extension Developer → Install Extension…,选择 .mcpb 文件并按提示操作。该仓库目前发布的是 npm stdio 包,不包含 .mcpb 包。对于仍支持本地配置的 Claude Desktop 版本,可使用 JSON stdio 配置作为回退,保存到 macOS 的 ~/Library/Application Support/Claude/claude_desktop_config.json 或 Windows 的 %APPDATA%\Claude\claude_desktop_config.json。

Cursor:在 macOS/Linux 的 ~/.cursor/mcp.json 或 Windows 的 %USERPROFILE%\.cursor\mcp.json 中添加配置。

VS Code:运行 MCP: Open User Configuration 并添加配置,用 MCP: List Servers 检查。

从对话连接(推荐)

说“connect Google Drive”后,助手会运行以下流程:

  • setup_instructions 打印检查清单:创建或选择 Google Cloud 项目、启用 Google Drive API、配置同意屏幕并创建 Desktop app OAuth 客户端。
  • 下载该客户端的 JSON(“Download JSON”),将路径提供给助手——set_client 会以仅所有者权限存储它。密钥不会经过对话。
  • start_login 返回 Google 同意链接。在本机打开并批准;代码通过 127.0.0.1 上的一次性监听器(PKCE)返回,不经过聊天。
  • finish_login 交换代码并将令牌保存到 ~/.config/mcp-google-drive/credentials.json(权限 0600),并通过真实的 Google Drive API 调用验证。

令牌在每次调用时重新读取,因此连接立即生效,无需重启 AI 应用。auth_status 显示连接状态,logout 撤销并删除凭据。

环境变量(CI、无人值守安装)

  1. 创建或选择 Google Cloud 项目并启用 Google Drive API。
  2. 配置 OAuth 同意屏幕并创建 Desktop app OAuth 客户端。
  3. 授权服务器应操作的 Google 账号。启用“Use your own OAuth credentials”时,OAuth 2.0 Playground 可获取刷新令牌。

作用域选择:

  • https://www.googleapis.com/auth/drive.readonly:只读工具,包括搜索、元数据、下载、导出和共享云端硬盘列表。
  • https://www.googleapis.com/auth/drive.file:仅限此应用创建或打开的文件,适用于应用自有文件的上传和整理流程。
  • https://www.googleapis.com/auth/drive:完整工具集,包括对任意文件的共享、回收站、删除和评论。

服务器使用刷新令牌签发时的作用域;超出该作用域的调用会以 insufficientPermissions 错误失败。

测试模式的 OAuth 刷新令牌可能在七天后过期。需要长期访问时,请发布 OAuth 应用,或在 Workspace 域中使用 Internal 应用。请将客户端密钥和刷新令牌视为密码。

所有变量都是可选的——不设置任何变量时,服务器从对话连接。需提供 OAuth 三件套或访问令牌。没有任何凭据时,服务器仍会启动并完成 MCP 握手;首次工具调用会回复需要设置的具体变量,而不是死掉。

适用场景

  • 查找并读取文件:查找上季度预算表并显示位置和所有者;将项目简报导出为 Markdown 并总结未决问题;将已签署的合同 PDF 下载到报告文件夹。
  • 整理和传输内容:创建“2026 Reports”文件夹并移动月度报告;上传会议记录并转换为 Google Doc;复制提案模板并为新客户重命名副本。
  • 共享与讨论:将文件夹以评论者身份共享给队友并添加备注;列出设计文档的未解决评论并解决已处理的;撤销外部承包商对存档的访问权限。
  • 谨慎清理:将过时草稿移入回收站,并恢复误删的一个;确认后永久删除测试上传文件夹;在清除前显示回收站内容。

限制

  • Drive 中所有内容(包括文件夹和共享云端硬盘项目)都是带 id 的文件。名称不唯一,工具按 id 操作,重名合法,创建前最好先搜索。
  • “删除”指回收站:可恢复,Google 约 30 天后自动清除。永久删除绕过回收站,会连同文件夹子树一起删除,位于单独的工具中。
  • Google Docs、Sheets 和 Slides 以整体单位移动、复制、共享、导出和转换。服务器没有编辑 Doc 内文本或 Sheet 内单元格的工具。
  • 内置上传限制为 5 MB(更大文件通过 raw_request 使用可恢复会话),导出限制为 10 MB(依据 Drive API)。通过 API 创建的评论无法锚定到 Doc 内的特定段落。
  • AI 客户端控制确认提示。服务器标记读取、写入和破坏性工具,以便客户端区分检查和实际更改。
  • Google Drive 需要 OAuth 2.0,API 密钥不够。
  • 请求发往 Google Drive。本地服务器刷新 Google OAuth 令牌并调用 Drive API。其匿名遥测包含安装 ID、包版本、AI 客户端和平台版本以及工具名称——绝不包含 OAuth 令牌、文件内容、工具参数或提示。设置 ASKADS_TELEMETRY=0 可退出。
  • Google 施加配额和大小上限。遇到 429 时服务器使用退避;读取也会在网络和 5xx 错误后重试,而写入在不确定失败后不会重放。
  • 本地文件处理谨慎。下载仅保存到绝对路径,除非要求否则拒绝覆盖现有文件;内联返回的文本内容上限为 100 KB。
  • 没有后台轮询。服务器仅在调用时运行;请求之间不会监视 Drive。如果 AI 应用支持计划任务,可以定期检查更改。