Google Drive MCP Server

Google Drive MCP Server

启用与 Google Drive 的集成,用于列出、读取和搜索文件,支持各种文件类型,并为 Google Workspace 文件提供自动导出功能。

云存储
文件系统
本地
JavaScript
访问服务器

README

Google Drive MCP 服务器

一个强大的模型上下文协议 (MCP) 服务器,提供与 Google Drive 的无缝集成,允许 AI 模型搜索、列出和读取 Google Drive 中的文件。

🚀 功能

工具

1. gdrive_search

在您的 Google Drive 中使用强大的全文搜索功能搜索文件。

  • 输入:
    {
      "query": "string (您的搜索查询)"
    }
    
  • 输出: 文件列表,包含:
    • 文件名
    • MIME 类型
    • 文件 ID
    • 上次修改时间
    • 文件大小

2. gdrive_read_file

使用 Google Drive 文件 ID 直接读取文件内容。

  • 输入:
    {
      "file_id": "string (Google Drive 文件 ID)"
    }
    
  • 输出: 文件内容,带有适当的格式转换

自动文件格式处理

服务器智能地处理不同的 Google Workspace 文件类型:

  • 📝 Google 文档 → Markdown
  • 📊 Google 表格 → CSV
  • 📊 Google 幻灯片 → 纯文本
  • 🎨 Google 绘图 → PNG
  • 📄 文本/JSON 文件 → UTF-8 文本
  • 📦 其他文件 → Base64 编码

🛠️ 入门

前提条件

  • Node.js (v16 或更高版本)
  • npm 或 yarn
  • 一个 Google Cloud 项目
  • 一个 Google Workspace 或个人 Google 帐户

详细的 Google Cloud 设置

  1. 创建一个 Google Cloud 项目

    • 访问 Google Cloud Console
    • 点击 "新建项目"
    • 输入项目名称(例如,"MCP GDrive Server")
    • 点击 "创建"
    • 等待项目创建完成并选择它
  2. 启用 Google Drive API

    • 转到 API 库
    • 搜索 "Google Drive API"
    • 点击 "Google Drive API"
    • 点击 "启用"
    • 等待 API 启用完成
  3. 配置 OAuth 同意屏幕

    • 导航到 OAuth 同意屏幕
    • 选择用户类型:
      • 如果您使用 Google Workspace,则选择 "内部"
      • 对于个人 Google 帐户,选择 "外部"
    • 点击 "创建"
    • 填写必填字段:
      • 应用名称:"MCP GDrive Server"
      • 用户支持电子邮件:您的电子邮件
      • 开发者联系电子邮件:您的电子邮件
    • 点击 "保存并继续"
    • 在 "范围" 页面上:
      • 点击 "添加或删除范围"
      • 添加 https://www.googleapis.com/auth/drive.readonly
      • 点击 "更新"
    • 点击 "保存并继续"
    • 检查摘要并点击 "返回仪表盘"
  4. 创建 OAuth 客户端 ID

    • 转到 凭据
    • 点击顶部的 "创建凭据"
    • 选择 "OAuth 客户端 ID"
    • 选择应用程序类型:"桌面应用"
    • 名称:"MCP GDrive Server Desktop Client"
    • 点击 "创建"
    • 在弹出窗口中:
      • 点击 "下载 JSON"
      • 保存文件
      • 点击 "确定"
  5. 在项目中设置凭据

    # 创建凭据目录
    mkdir credentials
    
    # 移动并重命名下载的 JSON 文件
    mv path/to/downloaded/client_secret_*.json credentials/gcp-oauth.keys.json
    

安装

# 克隆存储库
git clone https://github.com/felores/gdrive-mcp-server.git
cd gdrive-mcp-server

# 安装依赖
npm install

# 构建项目
npm run build

身份验证

  1. 创建一个凭据目录并将您的 OAuth 密钥放入其中:

    mkdir credentials
    # 将您下载的 OAuth JSON 文件移动到凭据目录,并命名为 gcp-oauth.keys.json
    
  2. 运行身份验证命令:

    node dist/index.js auth
    
  3. 在您的浏览器中完成 OAuth 流程

  4. 凭据将保存在 credentials/.gdrive-server-credentials.json

🔧 用法

作为命令行工具

# 启动服务器
node dist/index.js

与桌面应用程序集成

将此配置添加到您的应用程序的服务器设置中:

{
  "mcpServers": {
    "gdrive": {
      "command": "node",
      "args": ["path/to/gdrive-mcp-server/dist/index.js"],
      "env": {
        "GOOGLE_APPLICATION_CREDENTIALS": "path/to/gdrive-mcp-server/credentials/gcp-oauth.keys.json",
        "MCP_GDRIVE_CREDENTIALS": "path/to/gdrive-mcp-server/credentials/.gdrive-server-credentials.json"
      }
    }
  }
}

path/to/gdrive-mcp-server 替换为您安装目录的实际路径。

使用示例

  1. 搜索文件:

    // 搜索包含 "quarterly report" 的文档
    const result = await gdrive_search({ query: "quarterly report" });
    
  2. 读取文件内容:

    // 使用其 ID 读取特定文件
    const contents = await gdrive_read_file({ file_id: "your-file-id" });
    

🔒 安全

  • 所有敏感凭据都存储在 credentials 目录中
  • OAuth 凭据和令牌已从版本控制中排除
  • 对 Google Drive 的只读访问权限
  • 安全的 OAuth 2.0 身份验证流程

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

📝 许可证

此 MCP 服务器在 MIT 许可证下获得许可。 有关详细信息,请参见 LICENSE 文件。

🔍 故障排除

如果您遇到问题:

  1. 验证您的 Google Cloud 项目设置
  2. 确保已启用所有必需的 OAuth 范围
  3. 检查凭据是否正确放置在 credentials 目录中
  4. 验证 Google Drive 中的文件权限和访问权限

📚 附加资源

推荐服务器

Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
Excel MCP Server

Excel MCP Server

一个模型上下文协议服务器,使 AI 助手能够读取和写入 Microsoft Excel 文件,支持诸如 xlsx、xlsm、xltx 和 xltm 等格式。

精选
本地
Go
Playwright MCP Server

Playwright MCP Server

提供一个利用模型上下文协议的服务器,以实现类人浏览器的自动化,该服务器使用 Playwright,允许控制浏览器行为,例如导航、元素交互和滚动。

精选
本地
TypeScript
Claude Code MCP

Claude Code MCP

一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。

精选
本地
JavaScript
Apple MCP Server

Apple MCP Server

通过 MCP 协议与 Apple 应用(如“信息”、“备忘录”和“通讯录”)进行交互,从而使用自然语言发送消息、搜索和打开应用内容。

精选
本地
TypeScript
Supabase MCP Server

Supabase MCP Server

一个模型上下文协议(MCP)服务器,它提供对 Supabase 管理 API 的编程访问。该服务器允许 AI 模型和其他客户端通过标准化的接口来管理 Supabase 项目和组织。

精选
JavaScript
@kazuph/mcp-gmail-gas

@kazuph/mcp-gmail-gas

用于 Gmail 集成的模型上下文协议 (Model Context Protocol, MCP) 服务器。它允许 Claude Desktop(或任何 MCP 客户端)通过 Google Apps Script 与您的 Gmail 帐户进行交互。

精选
JavaScript
Metabase MCP Server

Metabase MCP Server

使人工智能助手能够与 Metabase 数据库和仪表板进行交互,允许用户通过自然语言列出和执行查询、访问数据可视化以及与数据库资源进行交互。

精选
JavaScript
Linear MCP Server

Linear MCP Server

一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

精选
JavaScript
Airtable MCP Server

Airtable MCP Server

一个模型上下文协议(Model Context Protocol,MCP)服务器,它提供通过 Claude Desktop 或其他 MCP 客户端以编程方式管理 Airtable 数据库、表格、字段和记录的工具。

精选
JavaScript