Google文档MCP服务器

Google文档MCP服务器提供对Google文档的读取、评论管理和导出功能,适用于文档处理和协作场景。

  • by jag-k
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 jag-k/google-docs-mcp

使用说明

谷歌文档MCP

用于Google Docs的MCP服务器。

特性

  • 工具:
    • docs.read --以Markdown或HTML格式阅读文档
    • comments.list --列出评论和回复
    • comments.reply --回复评论(写门控)
    • comments.resolve --解决评论(写门控)
    • docs.insert_text --插入或附加文本(写门控)
    • docs.from_url --将文档/驱动器URL标准化为ID
    • drive.export_file --导出为PDF/DOCX/HTML
  • 资源:
    • mcp://token-info --安全令牌诊断(无秘密)
    • gdoc-md://{document_id} --谷歌文档(Markdown)
    • gdoc-html://{document_id} --谷歌文档(HTML)
  • 提示:
    • comment_reply, summarize_doc

快速开始

  • 使用CLI(推荐):
    • 授权: uvx google-docs-mcp auth authorize [-f|--force]
    • 启动服务器(默认stdio): uvx google-docs-mcp server [--transport stdio|http|sse|streamable-http]
  • 使用本地实例:
    • 授权: uv run google_docs_mcp auth authorize
    • 启动服务器: uv run google_docs_mcp server

MCP配置(示例)

添加到MCP客户端配置(已安装CLI):

[mcp_servers.google_docs_mcp]
command = "uvx"
args = ["google-docs-mcp", "server"]
env = {
  WRITE_MODE = "disabled",
  GOOGLE__CLIENT_ID = "<id>",
  GOOGLE__CLIENT_SECRET = "<secret>",
}

OAuth设置

  1. 在谷歌云控制台中创建OAuth桌面客户端。
  2. 提供 GOOGLE__CLIENT_ID 和 GOOGLE__CLIENT_SECRET 作为env-vars,或者在config目录中放置一个客户端文件并设置 GOOGLE__OAUTH_CLIENT_FILE.
  3. 跑 google-docs-mcp auth authorize (或 uv run -m google_docs_mcp.cli auth authorize)并批准范围。

写安全

  • 通过控制 WRITE_MODE env var。默认值为 enabled.Set disabled 阻止任何写入工具。

配置

  • 此repo提供自动生成的 Configuration.md 以及一个启动器 .env.example。它们是所有环境变量和默认值的真实来源。
  • 常见变量:
    • WRITE_MODE: enabled (默认)或 disabled
    • LOG_LEVEL: DEBUG | INFO (默认)| WARNING | ERROR | CRITICAL
    • GOOGLE__CLIENT_ID, GOOGLE__CLIENT_SECRET, GOOGLE__OAUTH_CLIENT_FILE, GOOGLE__SCOPES s 看 Configuration.md 对于所有环境变量和示例。起动机 .env.example 提供。

备注

  • Python 3.13,pydantic v2,ruff格式,严格的mypy。
  • 无设计测试;保持代码的小型化和文档化。

MCP检查员

MCP检查器是一个方便的用户界面,用于探索和调用工具。

交互式设置(推荐):

  • 启动检查器: npx -y @modelcontextprotocol/inspector
  • 在连接对话框中,设置:
    • 运输: stdio
    • 命令: google-docs-mcp (或 uv 对于上面的替代配置)
    • Args: server
    • Env(可选):添加 WRITE_MODE=disabled 以及您的OAuth变量(如果尚未存储)
  • 连接,然后列出工具并尝试 docs.from_url 和 docs.read.

提示:使用启用详细日志 LOG_LEVEL=DEBUG 在Env中诊断问题。

关于驱动器权限的说明

  • 一些工具(注释和导出)调用驱动器API。如果您在可访问的文档上看到类似“找不到文件”的驱动器404,请使用驱动器只读范围重新授权:
    • 确保 GOOGLE__SCOPES 包含 https://www.googleapis.com/auth/drive.readonly.
    • 跑 google-docs-mcp auth authorize 再次授予新的范围。

诊断

  • 显示令牌信息(安全): google-docs-mcp auth token-info
  • 撤销本地令牌: google-docs-mcp auth revoke

安全

  • 所需范围: https://www.googleapis.com/auth/documents 和 https://www.googleapis.com/auth/drive.readonly.
  • 秘密永远不会被记录。这 mcp://token-info 资源只公开安全的元数据。