Gmail集成服务

一个提供Gmail集成功能的MCP服务器,允许MCP客户端如Claude Desktop查看和搜索Gmail邮件。

  • by ajbr0wn
  • Python
  • 本地部署
  • 8 星标
  • 更新于
在 GitHub 查看 ajbr0wn/gmail-mcp-server

使用说明

Gmail MCP服务器

一个MCP(模型上下文协议)服务器,为Claude Desktop等MCP客户端提供Gmail集成功能。

特性

  • 从您的Gmail收件箱查看最近的电子邮件
  • 使用Gmail的搜索语法搜索电子邮件
  • 使用Gmail API进行安全的OAuth2身份验证

设置

1.谷歌云项目设置

  1. 创建Google Cloud项目https://console.cloud.google.com/
  2. 启用Gmail API
  3. 创建OAuth 2.0凭据:
    • 应用程序类型:桌面应用程序
    • 将凭据下载为 credentials.json

2.安装

# Create a conda environment
conda create -n mcp-gmail python=3.12
conda activate mcp-gmail

# Install the package
cd gmail-mcp-server
pip install -e .

3.克劳德桌面配置

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "gmail": {
      "command": "/path/to/conda/envs/mcp-gmail/bin/python",
      "args": ["-m", "gmail_mcp_server.server"],
      "env": {
        "PYTHONPATH": "/path/to/gmail-mcp-server/src",
        "GMAIL_CREDENTIALS_FILE": "/path/to/credentials.json",
        "GMAIL_TOKEN_FILE": "/path/to/token.json"
      }
    }
  }
}

替换 /path/to/ 你的实际路径。令牌文件将在您首次进行身份验证时自动创建。

4.首轮

当您首次尝试通过Claude访问Gmail时,系统会提示您在浏览器中授权该应用程序。授权后,您的凭据将保存到令牌文件中以供将来使用。

可用资源

  • gmail://inbox/recent -返回您最近10封电子邮件

可用工具

  • search_emails
    • 描述:使用查询搜索Gmail电子邮件
    • 参数:
      • query (必填):Gmail搜索查询(使用Gmail的标准搜索语法)
      • max_results (可选):返回的最大结果数(默认值:10)

搜索示例:

Could you show me any emails from sanrio in the last two days?

安全

此服务器需要使用Gmail进行OAuth2身份验证:

  • 首次使用时,系统会提示您在浏览器中授权访问
  • 凭据存储在本地指定的令牌文件中
  • 可以通过您的Google帐户设置随时撤销访问权限
  • 仅请求对Gmail的读取权限(无写入权限)

环境变量

  • GMAIL_CREDENTIALS_FILE (必填):您的Google OAuth凭据文件的路径
  • GMAIL_TOKEN_FILE (必需):将保存身份验证令牌的路径

对于测试,您可以直接运行服务器:

GMAIL_CREDENTIALS_FILE="/path/to/credentials.json" \
GMAIL_TOKEN_FILE="/path/to/token.json" \
python -m gmail_mcp_server.server

发展

服务器使用模型上下文协议提供:

  • 对最近电子邮件的资源访问
  • 电子邮件搜索工具支持
  • 安全的OAuth2身份验证流程
  • 自动令牌刷新

日志记录

服务器将有关其操作的详细信息记录到stderr,包括:

  • 服务器启动信息
  • 身份验证状态
  • 资源和工具使用
  • 任何错误或问题

贡献

欢迎拉取请求!请确保:

  • 更新任何新功能的文档
  • 添加适当的错误处理
  • 使用新功能测试OAuth流
  • 遵循现有代码样式