Back to MCP directory
publicPublicdnsLocal runtime

jmonsellier_gmail-mcp-server

该项目是一个基于Gmail API的MCP服务,提供邮件发送、删除、阅读、草拟和回复功能,需用户授权后操作。

article

README

🚀 Gmail 服务器用于模型上下文协议 (MCP)

本 MCP 服务器与 Gmail 集成,可实现发送、删除、阅读、撰写和回复电子邮件等功能。它为用户提供了便捷的邮件操作途径,让邮件管理更加高效。

⚠️ 重要提示

此服务器允许 MCP 客户端读取、删除和发送电子邮件。不过,客户端在执行此类操作前会提示用户。

GitHub 资源链接

✨ 主要特性

  • 与 Gmail 深度集成,支持多种邮件操作。
  • 客户端操作前会提示用户,保障用户信息安全。

📦 安装指南

Gmail API 配置

  1. 创建一个新的 Google Cloud 项目
  2. 启用 Gmail API
  3. 配置 OAuth 同意屏幕
    • 选择“外部”。不过,我们不会发布此应用程序。
    • 将您的个人电子邮件地址添加为“测试用户”。
  4. 添加 OAuth 范围 https://www.googleapis.com/auth/gmail/modify
  5. 创建一个 OAuth 客户端 ID 对于应用程序类型“桌面应用”
  6. 下载您的客户 OAuth 令牌文件的 JSON 文件
  7. 重命名该密钥文件并保存到您本地计算机的安全位置。请记住此路径。
    • 启动服务器时,--creds-file-path 参数将传递此文件的绝对路径。

身份验证

启动服务器时,身份验证流程将在您的系统浏览器中启动。令牌凭证随后会保存在指定的文件路径中(并稍后从中检索),路径通过 --token-path 参数传递。

例如,您可能会使用主目录中的隐藏目录:

| 参数 | 示例 | | ---- | ---- | | --creds-file-path | /[your-home-folder]/.google/client_creds.json | | --token-path | /[your-home-folder]/.google/app_tokens.json |

💻 使用示例

基础用法

# 示例代码:启动 MCP 服务器的命令
python3 mcp_server.py --creds-file-path=/path/to/client_creds.json --token-path=/path/to/app_tokens.json

此服务器将允许与 Gmail 集成,并通过 MCP 协议进行交互。

📚 详细文档

组件

工具

  • send-email

    • 功能:向指定的收件人发送电子邮件
    • 输入:
      • recipient_id (字符串):收件人的电子邮件地址
      • subject (字符串):电子邮件主题
      • message (字符串):电子邮件内容
    • 返回:状态和消息 ID
  • trash-email

    • 功能:将电子邮件移动到垃圾邮件文件夹
    • 输入:
      • email_id (字符串):自动生成的电子邮件 ID
    • 返回:成功消息
  • mark-email-as-read

    • 功能:标记电子邮件为已读状态
    • 输入:
      • email_id (字符串):自动生成的电子邮件 ID
    • 返回:成功消息
  • get-unread-emails

    • 功能:检索未读电子邮件
    • 返回:未读电子邮件的列表,包括电子邮件 ID
  • read-email

    • 功能:检索指定电子邮件的内容
    • 输入:
      • email_id (字符串):自动生成的电子邮件 ID
    • 返回:包含电子邮件元数据的字典,并将电子邮件标记为已读
  • open-email

    • 功能:在浏览器中打开电子邮件
    • 输入:
      • email_id (字符串):自动生成的电子邮件 ID
    • 返回:成功消息并打开指定电子邮件以在默认浏览器中查看
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client