项目简介

Gmail GAS MCP Server 是一个基于 Model Context Protocol (MCP) 的服务器实现,它通过 Google Apps Script 将 Gmail 功能集成到支持 MCP 协议的 LLM 客户端,例如 Claude Desktop。该服务器允许 LLM 客户端安全地访问和操作用户的 Gmail 邮箱,扩展了 LLM 的上下文理解和信息获取能力。

主要功能点

  • 邮件搜索: 允许 LLM 客户端使用 Gmail 强大的搜索语法检索邮箱中的邮件。
  • 邮件获取: 允许 LLM 客户端获取指定邮件的完整内容,包括邮件正文和详细信息。
  • 附件下载: 允许 LLM 客户端下载指定邮件的附件,方便 LLM 处理邮件附件内容。

安装步骤

  1. 部署 Google Apps Script:

    • 访问 Google Apps Script 并创建一个新项目。
    • 复制仓库中的 'code.gs' 文件的全部内容,粘贴到 Apps Script 编辑器中。
    • 点击 "部署" -> "新部署"。
    • 选择 "Web 应用" 作为部署类型。
    • 配置以下设置:
      • "以我的身份执行应用"
      • "允许访问权限" 选择 "任何人"。
    • 点击 "部署"。
    • 首次部署时,需要授权该应用访问您的 Gmail 账户。请按照提示操作,允许必要的 Gmail 权限。
    • 部署成功后,复制部署的 Web 应用 URL。
    • 生成一个随机 API 密钥作为安全验证,请妥善保管此密钥。
  2. 配置 MCP 客户端 (以 Claude Desktop 为例):

    • 打开 Claude Desktop 客户端。
    • 找到 Claude Desktop 的配置文件 'claude_desktop_config.json'。您可以通过 Claude Desktop 菜单 "Settings" -> "Developer" 找到该文件。
    • 在配置文件中,找到 'tools' 字段(如果没有则手动创建)。
    • 在 'tools' 字段下添加 'gmail' 工具配置,配置内容如下:
    {
      "tools": {
        "gmail": {
          "command": "npx",
          "args": ["-y", "@kazuph/mcp-gmail-gas"],
          "env": {
            "GAS_ENDPOINT": "YOUR_DEPLOYMENT_URL",
            "VALID_API_KEY": "YOUR_API_KEY"
          }
        }
      }
    }
    • command: MCP 服务器的启动命令,这里使用 'npx' 来运行 npm 包。
    • args: 传递给启动命令的参数,'-y @kazuph/mcp-gmail-gas' 表示运行 npm 包 '@kazuph/mcp-gmail-gas'。
    • env: 环境变量配置,用于传递 MCP 服务器运行所需的参数:
      • 'GAS_ENDPOINT': 替换为 步骤 1 中复制的 Google Apps Script Web 应用 URL。
      • 'VALID_API_KEY': 替换为您在 步骤 1 中生成的 API 密钥。

基本使用方法

配置完成后,在 Claude Desktop 或其他支持 MCP 协议的 LLM 客户端中,您可以通过自然语言指令调用 'gmail' 工具来使用 Gmail 功能。例如:

  • "搜索最近一周关于会议的邮件" (LLM 客户端会将指令转换为 'gmail_search_messages' 工具调用,并传递相应的搜索参数)
  • "读取 messageId 为 xxx 的邮件内容" (LLM 客户端会将指令转换为 'gmail_get_message' 工具调用,并传递邮件 ID)
  • "下载 messageId 为 yyy 邮件的附件 invoice.pdf" (LLM 客户端会将指令转换为 'gmail_download_attachment' 工具调用,并传递邮件 ID 和附件名称)

请参考 Claude Desktop 或您使用的 MCP 客户端的具体使用文档,了解如何通过自然语言指令调用 MCP 工具。

信息

分类

通信与社交