文档格式转换服务

该服务允许用户将Google文档转换为多种格式(如Markdown、PDF、DOCX等),适用于需要文档格式转换的开发者和普通用户。

  • by chen-star
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 chen-star/google_doc_any_format_mcp

使用说明

谷歌文档任意格式MCP

此MCP服务器允许您使用LLM将Google文档转换为各种格式(Markdown、PDF、DOCX、TXT等)。

演示

1.MCP检查员请求

2.原始谷歌文档

3.转换后的Markdown

设置

1.谷歌云项目设置

要使用此服务器,您需要设置Google云项目并启用Google Drive API。

  1. 去 谷歌云控制台.
  2. 创建一个新项目。
  3. 引导到 API和服务>库.
  4. 搜索“Google Drive API”并启用它。
  5. 引导到 API和服务>OAuth同意屏幕.
    • 用户类型: 选择 外部 (除非您有一个工作区组织,并希望将其限制为内部用户)。点击 创建.
    • 应用程序信息: 填写“应用程序名称”(例如“MCP客户端”)、“用户支持电子邮件”和“开发人员联系信息”。点击 保存并继续.
    • 范围:
      • 点击 添加或删除作用域.
      • 在过滤器框中,键入 drive.readonly.
      • 选中以下复选框 .../auth/drive.readonly (Google Drive API)。
      • 点击 更新.
      • 点击 保存并继续.
    • 测试用户:
      • 点击 +添加用户.
      • 输入您的谷歌电子邮件地址(您将用于登录的地址)。
      • 点击 添加.
      • 点击 保存并继续.
    • 摘要: 查看并单击 返回仪表盘.
  6. 引导到 API和服务>凭据.
  7. 点击 创建凭据 > OAuth客户端ID.
  8. 选择 桌面应用 作为应用程序类型。
  9. 将其命名为“MCP客户端”(或任何您喜欢的名称)。
  10. 点击 创建.
  11. 下载JSON文件并将其重命名为 credentials.json.
  12. 地方 credentials.json 在该项目的根目录中。

2.安装

建议使用虚拟环境。

# Create virtual environment
python3 -m venv .venv

# Activate virtual environment
source .venv/bin/activate

# Install dependencies
pip install -r requirements.txt

3.运行服务器

你可以直接用Python运行服务器。这将使用stdio传输启动服务器。

.venv/bin/python server.py

关于身份验证的注意事项: 首次运行时(或首次使用工具时),将打开一个浏览器窗口,要求您登录您的Google帐户。这将生成一个 token.json 用于未来身份验证的文件。

身份验证故障排除

重要提示: 如果您看到“谷歌尚未验证此应用程序”警告屏幕:

  1. 点击 高级.
  2. 点击 转到[应用程序名称](不安全) 在底部。
  3. 点击 继续 授予访问权限。

这是未经谷歌验证的测试模式下应用程序的预期行为。

4.使用MCP检查员进行测试

您可以使用MCP检查器在本地测试服务器。

npx @modelcontextprotocol/inspector .venv/bin/python server.py

5.克劳德桌面配置

要在Claude Desktop中使用此功能,请将以下内容添加到您的 ~/Library/Application Support/Claude/claude_desktop_config.json:

{
  "mcpServers": {
    "google-doc-converter": {
      "command": "/absolute/path/to/your/project/.venv/bin/python",
      "args": ["/absolute/path/to/your/project/server.py"]
    }
  }
}

工具

  • convert_google_doc(file_id, format):将文档转换为指定格式。
    • 支持的格式: pdf, docx, html, md (Markdown), rst, tex (LaTeX), epub, odt, rtf,以及Pandoc支持的其他人。

    • 如何找到 file_id?在浏览器中打开您的谷歌文档。URL看起来像这样: https://docs.google.com/document/d/1aBcD_EfGhIjKlMnOpQrStUvWxYz1234567890/editThe file_id 是之间的长串吗 /d/ 和 /edit在这个例子中,它是: 1aBcD_EfGhIjKlMnOpQrStUvWxYz1234567890.