mcpField
G
Google Drive

Google Drive

本地服务
github.com文件与存储63 天前更新

关于 Google Drive

Google Drive 是用于管理 Drive 文件、文件夹、评论和权限的 MCP 服务。它通过 OAuth 代理转发 Google 授权,不保留令牌或状态。

主要功能

  1. 01搜索和列出文件
  2. 02下载、上传和更新文件
  3. 03创建并整理文件夹
  4. 04管理评论和回复
  5. 05查看和修改文件权限

适用场景

  1. 01查找并阅读 Drive 文件中的信息
  2. 02为项目创建文件夹结构
  3. 03检查多个演示文稿中的评论
  4. 04翻译并审核一组文档

MCP 相关

它向 MCP 客户端提供 Google Drive 文件、文件夹、评论和权限操作工具。服务代理 OAuth,并使用持有者令牌调用 Drive API。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"domdomegg-google-drive": {
"command": "npx",
"args": [
"-y",
"google-drive-mcp"
],
"env": {
"GOOGLE_ACCESS_TOKEN": "<GOOGLE_ACCESS_TOKEN>",
"MCP_TRANSPORT": "<MCP_TRANSPORT>",
"GOOGLE_CLIENT_ID": "<GOOGLE_CLIENT_ID>",
"GOOGLE_CLIENT_SECRET": "<GOOGLE_CLIENT_SECRET>"
}
}
}
}
启动命令npx -y google-drive-mcp
需要配置的环境变量
GOOGLE_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+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgoogle-drive-mcp1.3.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

google-drive-mcp

用于 Google Drive 的 MCP 服务——可列出、搜索、上传、下载和管理文件及文件夹。

使用场景

根据文件作答:“我们的 Q2 董事会演示文稿中的营收目标是多少?”→ 搜索 Drive,读取相关文档并回答问题。

项目架构搭建:开始新的供应商入驻流程 → 创建包含合同、合规、交付物和会议记录子文件夹的文件夹结构,并创建模板文档和表格。

反馈综合分析:“总结我经理对我最近 10 份演示文稿的反馈” → 读取多个文件中的评论,并找出主题和发展方向。

本地化工作流:“我们正在日本招募承包商——请将入职文件夹从英文翻译成日文,并标出需要根据当地情况调整的内容(人力资源政策、节假日等)” → 读取多个文档、进行翻译,并标出需要审核的部分。

(这些只是一些示例——任何需要搜索、读取或整理文件的工作流都可以使用此工具。可与 google-docs-mcp 搭配使用,以读取或编辑 Google Docs;也可与 google-sheets-mcp 搭配使用,以处理 Google Sheets。)

设置

1. 创建 Google OAuth 凭据
  1. 前往 Google Cloud Console
  2. 创建新项目(或使用现有项目)
  3. 启用 Google Drive API
  4. 前往 APIs & Services → OAuth consent screen,设置同意屏幕
  5. 前往 APIs & Services → Credentials → Create Credentials → OAuth client ID
  6. 选择 Web application
  7. 将 http://localhost:3000/callback 添加到 Authorized redirect URIs
  8. 记下你的客户端 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]
  1. 服务通过 /.well-known/oauth-authorization-server 声明自身为 OAuth 授权服务器
  2. /register 返回 Google OAuth 客户端凭据
  3. /authorize 重定向到 Google,并在 state 中编码客户端的回调 URL
  4. /callback 接收 Google 返回的授权码,并转发给客户端的回调地址
  5. /token 将令牌请求代理到 Google,并注入客户端凭据
  6. /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 上提交拉取请求!开始参与:

  1. 安装 Git 和 Node.js
  2. 克隆仓库
  3. 使用 npm install 安装依赖项
  4. 运行 npm run test 执行测试
  5. 使用 npm run build 构建

发布

版本遵循语义化版本规范。

发布步骤:

  1. 使用 npm version <major | minor | patch> 更新版本号
  2. 运行 git push --follow-tags 推送并附带标签
  3. 等待 GitHub Actions 发布到 NPM 注册表。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。