关于 Google Drive
Google Drive 是用于管理 Drive 文件、文件夹、评论和权限的 MCP 服务。它通过 OAuth 代理转发 Google 授权,不保留令牌或状态。
主要功能
- 01搜索和列出文件
- 02下载、上传和更新文件
- 03创建并整理文件夹
- 04管理评论和回复
- 05查看和修改文件权限
适用场景
- 01查找并阅读 Drive 文件中的信息
- 02为项目创建文件夹结构
- 03检查多个演示文稿中的评论
- 04翻译并审核一组文档
MCP 相关
它向 MCP 客户端提供 Google Drive 文件、文件夹、评论和权限操作工具。服务代理 OAuth,并使用持有者令牌调用 Drive API。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
npx -y google-drive-mcpGOOGLE_ACCESS_TOKEN密钥Google OAuth access token with Drive scopes.MCP_TRANSPORTTransport type.GOOGLE_CLIENT_IDGoogle OAuth client ID.GOOGLE_CLIENT_SECRET密钥Google OAuth client secret.本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。
工具
本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。
详细介绍
google-drive-mcp
用于 Google Drive 的 MCP 服务——可列出、搜索、上传、下载和管理文件及文件夹。
使用场景
根据文件作答:“我们的 Q2 董事会演示文稿中的营收目标是多少?”→ 搜索 Drive,读取相关文档并回答问题。
项目架构搭建:开始新的供应商入驻流程 → 创建包含合同、合规、交付物和会议记录子文件夹的文件夹结构,并创建模板文档和表格。
反馈综合分析:“总结我经理对我最近 10 份演示文稿的反馈” → 读取多个文件中的评论,并找出主题和发展方向。
本地化工作流:“我们正在日本招募承包商——请将入职文件夹从英文翻译成日文,并标出需要根据当地情况调整的内容(人力资源政策、节假日等)” → 读取多个文档、进行翻译,并标出需要审核的部分。
(这些只是一些示例——任何需要搜索、读取或整理文件的工作流都可以使用此工具。可与 google-docs-mcp 搭配使用,以读取或编辑 Google Docs;也可与 google-sheets-mcp 搭配使用,以处理 Google Sheets。)
设置
1. 创建 Google OAuth 凭据
- 前往 Google Cloud Console
- 创建新项目(或使用现有项目)
- 启用 Google Drive API
- 前往 APIs & Services → OAuth consent screen,设置同意屏幕
- 前往 APIs & Services → Credentials → Create Credentials → OAuth client ID
- 选择 Web application
- 将
http://localhost:3000/callback添加到 Authorized redirect URIs - 记下你的客户端 ID 和客户端密钥
2. 运行服务
GOOGLE_CLIENT_ID='your-client-id' \
GOOGLE_CLIENT_SECRET='your-client-secret' \
MCP_TRANSPORT=http \
npm start
默认情况下,服务运行在 http://localhost:3000。可通过 PORT=3001 更改端口。
3. 添加到 MCP 客户端
服务运行后,按照 install-mcp 上的说明操作,该工具会为你的 MCP 客户端(Claude Code、Claude Desktop、Cursor、Cline、VS Code 等)生成正确的配置。
架构
此服务充当 Google 的 OAuth 代理:
graph LR
A[MCP client] <--> B[google-drive-mcp] <--> C[Google OAuth/API]
- 服务通过
/.well-known/oauth-authorization-server声明自身为 OAuth 授权服务器 /register返回 Google OAuth 客户端凭据/authorize重定向到 Google,并在 state 中编码客户端的回调 URL/callback接收 Google 返回的授权码,并转发给客户端的回调地址/token将令牌请求代理到 Google,并注入客户端凭据/mcp处理 MCP 请求,使用 bearer token 调用 Drive API
服务不保存令牌或状态——它只将 OAuth 请求代理到 Google。
工具
| 工具 | 描述 |
|---|---|
| 文件 | |
files_list | 使用 Drive 查询语法列出/搜索文件 |
file_get | 获取文件元数据 |
file_download | 下载文件内容(支持导出 Google Docs/Sheets 文件) |
file_upload | 上传新文件 |
file_update | 更新文件内容或元数据 |
file_copy | 复制文件 |
file_move | 将文件移至其他文件夹 |
file_trash | 移至回收站 |
file_untrash | 从回收站恢复 |
file_delete | 永久删除 |
| 文件夹 | |
folder_create | 创建新文件夹 |
| 评论 | |
comments_list | 列出文件上的评论 |
comment_get | 获取评论及其回复 |
comment_create | 为文件添加评论 |
comment_reply | 回复评论 |
comment_resolve | 解决或取消解决评论 |
| 回复 | |
replies_list | 列出评论的回复 |
reply_get | 获取特定回复 |
reply_update | 更新回复 |
reply_delete | 删除回复 |
| 权限 | |
permissions_list | 列出有权访问文件的人员 |
permission_get | 获取特定权限 |
permission_create | 与用户、群组、网域或任何人共享文件 |
permission_update | 更改用户的访问级别 |
permission_delete | 撤销对文件的访问权限 |
Drive 查询语法
files_list 工具支持使用 Drive 查询语法进行筛选:
# By name
name contains 'report'
name = 'Budget 2024'
# By type
mimeType = 'application/pdf'
mimeType = 'application/vnd.google-apps.folder'
mimeType = 'application/vnd.google-apps.document'
# By folder
'folder-id' in parents
# By ownership
'[email protected]' in owners
# Combined
name contains 'report' and mimeType = 'application/pdf'
Google Drive API 权限范围
drive- 完全访问 Drive 文件
参与贡献
欢迎在 GitHub 上提交拉取请求!开始参与:
- 安装 Git 和 Node.js
- 克隆仓库
- 使用
npm install安装依赖项 - 运行
npm run test执行测试 - 使用
npm run build构建
发布
版本遵循语义化版本规范。
发布步骤:
- 使用
npm version <major | minor | patch>更新版本号 - 运行
git push --follow-tags推送并附带标签 - 等待 GitHub Actions 发布到 NPM 注册表。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。