Google Drive MCP服务器

提供MCP(机器控制协议)接口与Google Drive文件和文件夹交互的服务器。

  • by ShakibaMirbagheri
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 ShakibaMirbagheri/mcp-google-drive

使用说明

Google Drive MCP服务器

提供MCP(机器控制协议)接口以与Google Drive文件和文件夹交互的服务器。

特性

  • 在Google云端硬盘中搜索文件
  • 获取文件内容和元数据
  • 具有令牌持久性的OAuth身份验证
  • HTTP和stdio传输模式

Docker Compose快速入门

最简单的入门方法是使用Docker Compose:

先决条件

  1. Docker和Docker Compose 安装在您的系统上
  2. Google Drive API证书 -下载中心 credentials.json 从 谷歌云控制台
  3. 认证令牌 -生成 tokens.json 通过运行身份验证设置(见下文)

设置步骤

  1. 将文件放置在项目根目录中:

    • credentials.json -您的Google Drive API证书
    • tokens.json -您的身份验证令牌(如果没有,则生成)
  2. 生成身份验证令牌(如果需要):

    # First, set up a local environment
    python -m venv venv
    source venv/bin/activate
    pip install -e .
    
    # Run authentication setup
    python -m gdrive_mcp_server.auth_setup --credentials credentials.json --token tokens.json
    
  3. 启动服务器:

    docker-compose up -d
    
  4. 验证它是否正在运行:

    docker-compose logs -f
    # You should see: "Starting Google Drive MCP server!"
    
  5. 测试连接:

    curl -X POST http://localhost:8000/mcp/v1/initialize \
      -H "Content-Type: application/json" \
      -d '{"protocolVersion": "2024-11-05", "capabilities": {}, "clientInfo": {"name": "test", "version": "1.0"}}'
    
  6. 停止服务器:

    docker-compose down
    

配置

  • 自定义端口: 创建一个 .env 文件包含 HTTP_PORT=8000 (或您偏好的端口)
  • 查看日志: docker-compose logs -f
  • 重新启动: docker-compose restart

服务器将在以下时间可用 http://localhost:8000 (或您配置的端口)。

需求

  • Python 3.11或更高版本
  • Google Drive API证书

设置

  1. 创建虚拟环境:
python -m venv venv
source venv/bin/activate  # On Windows: venv\Scripts\activate
  1. 在可编辑模式下安装软件包:
pip install -e .
  1. 设置Google Drive API凭据:

    • 转到 谷歌云控制台
    • 创建新项目或选择现有项目
    • 为您的项目启用Google Drive API
    • 转到左侧边栏中的“凭据”
    • 点击“创建凭据”并选择“OAuth客户端ID”
    • 选择“桌面应用程序”作为应用程序类型
    • 下载凭据文件并将其另存为 credentials.json
  2. 设置Google Drive身份验证:

python -m gdrive_mcp_server.auth_setup --credentials /path/to/your/credentials.json --token /path/to/your/tokens.json

用法

运行服务器:

# Standard mode
gdrive-mcp

# HTTP mode
gdrive-mcp --http

Docker使用

快速入门: 请参阅 Docker Compose快速入门 上面的部分提供了最快的入门方法。

使用Docker Compose运行

  1. 创建一个 .env 文件(可选,用于自定义端口):
HTTP_PORT=8000
  1. 构建并运行容器:
docker-compose up -d
  1. 查看日志:
docker-compose logs -f
  1. 停止容器:
docker-compose down

使用Docker运行

  1. 塑造形象:
docker build -t gdrive-mcp-server .
  1. 运行容器:
docker run -d \
  -p 8000:8000 \
  -v $(pwd)/credentials.json:/app/data/credentials.json:ro \
  -v $(pwd)/tokens.json:/app/data/tokens.json \
  --name gdrive-mcp-server \
  gdrive-mcp-server

在stdio模式下运行

要在stdio模式而不是HTTP模式下运行,请在中修改命令 docker-compose.yml:

command: ["python", "-m", "gdrive_mcp_server.server", "--token", "/app/data/tokens.json"]

Claude桌面集成

要与Claude Desktop集成,请将以下配置添加到您的 claude_desktop_config.json:

"mcpServers": {
  "google_drive": {
    "command": "/path/to/your/venv/bin/gdrive-mcp",
    "args": [
      "--token",
      "/path/to/your/tokens.json"
    ]
  }
}

用实际路径替换路径:

  • command:虚拟环境中gdrive-mcp可执行文件的路径
  • args[1]:您的tokens.json文件的路径(在身份验证设置过程中生成)

发展

该项目使用:

  • Python 3.11+
  • Google Drive API
  • MCP服务器框架
  • 用于HTTP传输的FastMCP
  • 丰富的终端格式化功能

开发依赖项可以通过以下方式安装:

pip install -e ".[dev]"

测试和示例

快速开始

看 快速启动.md 一份5分钟的入门指南。

使用文档

看 MCP_USAGE.md 有关以下内容的详细文档:

  • 连接到服务器
  • 列出可用工具
  • 调用工具
  • Python和curl中的示例代码

测试脚本

Python测试客户端:

# Make sure server is running first
python test_mcp_client.py

Bash示例:

./examples.sh

许可证

MIT许可证