返回市场
谷歌驱动器MCP

谷歌驱动器MCP

作者:festusev2 星标更新:2025-05-31

项目介绍

Google Drive MCP 服务器

这是一个用于 Google Drive 集成的 Model Context Protocol (MCP) 服务器,使用 FastMCP 构建。提供工具用于读取、写入、搜索和列出 Google Drive 文件,特别关注 Google 文档的操作。

功能

  • 文件操作:分页列出和搜索 Google Drive 中的文件
  • 文档阅读:分页并选择标签读取 Google 文档内容
  • 文档写入:选择标签并进行范围操作写入 Google 文档
  • 认证:使用服务账户认证以访问 Google Drive API
  • 分页:高效处理大型文档和文件列表

设置

1. 安装依赖

uv sync

2. Google API 设置

  1. 转到 Google Cloud 控制台
  2. 创建一个新项目或选择现有项目
  3. 启用 Google Drive API 和 Google 文档 API
  4. 创建一个服务账户并生成密钥
  5. 下载服务账户密钥文件,并将其保存为项目根目录下的 service-account-key.json
  6. 将任何要访问的 Google Drive 文件/文件夹与服务账户电子邮件共享

3. 运行服务器

python -m google_drive_mcp.server

无需身份验证流程——服务账户将自动使用密钥文件进行身份验证。

可用工具

list_files

列出 Google Drive 中的文件,可选过滤和分页。

参数:

  • folder_id(可选):要列出文件的文件夹ID(默认:根)
  • page_size(可选):每页文件数量(默认:50,最大:100)
  • page_token(可选):分页标记
  • mime_type(可选):按 MIME 类型过滤(例如:'application/vnd.google-apps.document')

search_files

使用查询语法在 Google Drive 中搜索文件。

参数:

  • query:搜索查询(例如:'name contains "report"')
  • page_size(可选):每页文件数量(默认:50,最大:100)
  • page_token(可选):分页标记

read_document

分页读取 Google 文档的内容。

参数:

  • document_id:Google 文档ID
  • tab_id(可选):要读取的具体标签ID
  • start_index(可选):起始字符索引(默认:0)
  • length(可选):要读取的字符数(默认:5000,最大:10000)

write_document

写入 Google 文档的内容。

参数:

  • document_id:Google 文档ID
  • content:要写入的内容
  • tab_id(可选):要写入的具体标签ID
  • insert_index(可选):插入内容的索引位置(默认:末尾)
  • replace_start(可选):替换内容的起始索引
  • replace_end(可选):替换内容的结束索引

使用示例

搜索 Google 文档

# 搜索包含 "report" 的文档
search_files(query='name contains "report" and mimeType="application/vnd.google-apps.document"')

分页读取文档

# 读取前5000个字符
read_document(document_id="your_doc_id")

# 读取接下来的5000个字符
read_document(document_id="your_doc_id", start_index=5000)

写入特定标签

# 在文档的特定标签中写入内容
write_document(
    document_id="your_doc_id",
    content="Hello, World!",
    tab_id="your_tab_id"
)

开发

项目结构

google_drive_mcp/
├── __init__.py
├── auth.py          # Google Drive 认证
└── server.py        # FastMCP 服务器实现

开发模式运行

# 以开发模式安装
uv pip install -e .

# 运行服务器
python -m google_drive_mcp.server

许可证

本项目采用 MIT 许可证。