Google Workspace MCP Server 使用说明

项目简介

该项目是一个基于 Model Context Protocol (MCP) 的服务器实现,旨在为大型语言模型 (LLM) 提供与 Google Workspace (Gmail 和 Calendar) 交互的能力。通过该服务器,LLM 可以调用预设的工具来管理用户的 Gmail 邮箱和 Google 日历,例如:

  • Gmail: 列出邮件、搜索邮件、发送邮件、修改邮件标签等。
  • Calendar: 列出日程、创建日程、更新日程、删除日程等。

这使得 LLM 应用能够集成用户的 Google Workspace 数据,实现更智能化的功能,例如:根据邮件内容总结待办事项、根据日程安排会议等。

主要功能点

  • Gmail 工具集: 提供了一系列用于操作 Gmail 的工具,包括:
    • 'list_emails': 列出最近的邮件,可以根据条件过滤。
    • 'search_emails': 根据关键词搜索邮件。
    • 'send_email': 发送新的邮件。
    • 'modify_email': 修改邮件的标签(例如,标记为已读、存档、删除等)。
  • Calendar 工具集: 提供了一系列用于操作 Google Calendar 的工具,包括:
    • 'list_events': 列出未来的日程安排,可以按时间范围过滤。
    • 'create_event': 创建新的日程事件。
    • 'update_event': 更新已有的日程事件。
    • 'delete_event': 删除日程事件。

安装步骤

  1. 安装 Node.js: 确保你的系统已安装 Node.js (版本 14 或更高)。
  2. 克隆仓库: 使用 'git clone https://github.com/MCP-Mirror/epaproditus_google-workspace-mcp-server.git' 命令克隆仓库到本地。
  3. 进入目录: 使用 'cd epaproditus_google-workspace-mcp-server' 命令进入项目目录。
  4. 安装依赖: 运行 'npm install' 命令安装项目所需的依赖包。
  5. 配置 OAuth 凭据:
    • 前往 Google Cloud Console 并创建一个项目或选择现有项目。
    • 启用 Gmail APIGoogle Calendar API
    • 创建 OAuth 2.0 客户端 ID,选择 "Web 应用" 类型。
    • 在 "已授权的重定向 URI" 中添加 'http://localhost:4100/code'。
    • 将下载的 'credentials.json' 文件复制到项目根目录。
  6. 获取 Refresh Token: 运行 'node get-refresh-token.js' 命令。
    • 该命令将打开浏览器进行 Google OAuth 授权。
    • 授权后,RefreshToken 将会显示在控制台,并保存到 'token.json' 文件中。
  7. 构建项目: 运行 'npm run build' 命令构建项目。

服务器配置

要将此 MCP 服务器连接到 MCP 客户端(例如 Claude),你需要在客户端的 MCP 设置中添加以下配置。以下以 JSON 格式展示,你需要根据你的实际环境修改路径和凭据:

{
  "mcpServers": {
    "google-workspace": {  // 服务器名称,可以自定义
      "command": "node",   // 启动服务器的命令,这里使用 Node.js 运行
      "args": [            // 命令参数
        "/path/to/google-workspace-server/build/index.js" //  'index.js' 文件的绝对路径,请替换为你的实际路径
      ],
      "env": {             // 环境变量
        "GOOGLE_CLIENT_ID": "YOUR_CLIENT_ID",        //  你的 Google OAuth 客户端 ID,替换为实际值
        "GOOGLE_CLIENT_SECRET": "YOUR_CLIENT_SECRET", // 你的 Google OAuth 客户端密钥,替换为实际值
        "GOOGLE_REFRESH_TOKEN": "YOUR_REFRESH_TOKEN"   // 你获取到的 Google OAuth Refresh Token,替换为实际值
      }
    }
  }
}

注意:

  • 请将 '/path/to/google-workspace-server/build/index.js' 替换为 'build/index.js' 文件在你本地文件系统中的绝对路径
  • 请将 'YOUR_CLIENT_ID', 'YOUR_CLIENT_SECRET', 和 'YOUR_REFRESH_TOKEN' 替换为你实际的 Google OAuth 凭据。
  • MCP 客户端的具体配置文件路径,请参考仓库的 README 文档或客户端自身的文档。

基本使用方法

配置完成后,MCP 客户端应该能够检测到 'google-workspace' 服务器。你可以通过客户端向该服务器发送 MCP 请求来调用相应的工具。

例如,要使用 'list_emails' 工具列出最近的邮件,你可以构造一个包含工具名称和参数的 JSON 请求发送给 MCP 客户端,客户端会将请求转发到该 MCP 服务器。具体的请求格式和参数请参考仓库 README.md 中的 "Usage Examples" 部分,以及每个工具 'inputSchema' 的定义。

示例 (列出最近5封未读邮件):

{
  "maxResults": 5,
  "query": "is:unread"
}

注意: 你需要查阅 MCP 客户端的文档,了解如何发送 MCP 请求以及如何与配置的 MCP 服务器进行交互。 通常,你可以在 LLM 应用的设置或配置中找到 MCP 服务器的配置选项。

信息

分类

生产力应用