mcpField
G
Google Docs

Google Docs

本地服务
github.com生产力24 天前更新

关于 Google Docs

Google Docs 是供 AI 系统读取和编辑文档的 MCP 服务,通过 Google Docs API 提供文档操作,并以不保留令牌或状态的代理处理 OAuth。

主要功能

  1. 01读取所有标签页的文档文本
  2. 02获取文档原始结构
  3. 03创建空白文档
  4. 04原子执行批量编辑
  5. 05追加、插入和替换文本

适用场景

  1. 01根据合同内容回答问题
  2. 02会后更新团队文档
  3. 03依据资料起草公告
  4. 04维护每日计划日志

MCP 相关

该服务向 MCP 客户端提供 Google Docs 读取和编辑工具,并代理 OAuth 请求,使用承载令牌调用 Google Docs API。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"domdomegg-google-documents": {
"command": "npx",
"args": [
"-y",
"google-documents-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-documents-mcp
需要配置的环境变量
GOOGLE_ACCESS_TOKEN密钥Google OAuth access token with Docs scope.
MCP_TRANSPORTTransport type.
GOOGLE_CLIENT_IDGoogle OAuth client ID.
GOOGLE_CLIENT_SECRET密钥Google OAuth client secret.

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npmgoogle-documents-mcp1.2.0

工具

还没有获取到工具列表

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

详细介绍

google-documents-mcp

用于 Google Docs 的 MCP 服务——读取和编辑文档。

使用场景

文档问答:“合同中关于终止条款的内容是什么?”→ 读取文档并提取相关部分。

会议转文档工作流:通话结束后,读取 Gemini 转录内容和后续 Slack 讨论,然后根据讨论做出的决定更新团队章程。

发布公告:“根据 GitHub PR 和 #proj-awesome 中的 Slack 讨论,为新功能起草一篇博客文章”→ 将技术变更整理成面向用户的内容。

借助持久上下文进行每日规划:你的 AI 助手每天开始时会读取“规划日志”文档,询问你昨天的进展,帮助你确定今天的优先事项,然后将计划更新到文档中。上下文会在不同会话之间延续——它会记住你说过要做的事,并进行跟进。

(这些只是示例——任何需要读取或编辑文档的工作流都可以使用此工具。可与 google-drive-mcp 配合使用,以查找文件、删除文件、添加评论和管理共享权限。)

设置

1. 创建 Google OAuth 凭据
  1. 前往 Google Cloud Console
  2. 创建新项目(或使用现有项目)
  3. 启用 Google Docs 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. 记录你的 Client ID 和 Client Secret
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-documents-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 调用 Google Docs API

服务不保存任何令牌或状态,只负责代理 OAuth 请求到 Google。

工具

工具描述
document_get_raw获取完整的原始 JSON 结构(所有标签页、格式、页眉、页脚和样式)
document_get_text获取所有标签页的纯文本内容
document_create创建新的空白文档
document_batch_update原子性地应用多项编辑(插入、删除、格式设置等)
document_append在文档末尾追加文本
document_insert在指定索引处插入文本
document_replace查找并替换文本
batch_update 请求类型

document_batch_update 工具支持以下操作:

  • insertText - 在指定位置插入文本
  • deleteContentRange - 删除一段内容
  • replaceAllText - 查找并替换所有匹配项
  • insertInlineImage - 插入图片
  • insertTable - 创建表格
  • insertTableRow / insertTableColumn - 向表格添加行/列
  • deleteTableRow / deleteTableColumn - 从表格中删除行/列
  • insertPageBreak - 添加分页符
  • createNamedRange / deleteNamedRange - 管理命名范围
  • createParagraphBullets / deleteParagraphBullets - 管理项目符号列表

Google Docs API 作用域

  • documents - 完整访问文档的读取和编辑权限

参与贡献

欢迎在 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 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。