Enhanced Gmail MCP Server

Enhanced Gmail MCP Server

一个模型上下文协议服务器,使像 Claude 这样的人工智能助手能够通过自然语言与 Gmail 互动,提供全面的电子邮件管理功能,包括发送、阅读、组织、搜索以及管理草稿和标签。

Category
访问服务器

README

增强型 Gmail MCP 服务器

一个功能强大且特性丰富的 Model Context Protocol (MCP) 服务器,用于 Gmail 集成,使用 Python 编写。该服务器使 AI 助手(如 Claude)能够通过自然语言与 Gmail 交互,提供全面的电子邮件管理功能。

🌟 主要特性

📧 完整的电子邮件管理

  • 发送具有可自定义主题、内容和收件人的电子邮件
  • 读取和检索包含完整元数据的电子邮件内容
  • 将电子邮件移动到垃圾箱并进行确认
  • 将电子邮件标记为已读/未读
  • 直接在浏览器中打开电子邮件

📝 草稿管理

  • 创建草稿电子邮件以供稍后查看
  • 列出所有草稿电子邮件
  • 编辑现有草稿

🏷️ 高级标签管理

  • 列出所有可用标签
  • 创建自定义标签
  • 将标签应用于电子邮件/从电子邮件中删除标签
  • 重命名现有标签
  • 删除未使用的标签
  • 按标签搜索电子邮件

📁 文件夹组织

  • 创建新文件夹(实现为 Gmail 标签)
  • 在文件夹之间移动电子邮件
  • 列出所有可用文件夹

🔍 强大的搜索和过滤

  • 使用 Gmail 的高级查询语法搜索电子邮件
  • 创建、管理和删除电子邮件过滤器
  • 按发件人、收件人、主题、内容等进行过滤
  • 使用灵活的参数自定义搜索结果

🗄️ 存档管理

  • 存档电子邮件(从收件箱中删除但不删除)
  • 批量存档符合搜索条件的多个电子邮件
  • 列出所有已存档的电子邮件
  • 将已存档的电子邮件恢复到收件箱

🚀 快速开始

前提条件

  • Python 3.8+
  • 启用了 Gmail API 的 Google Cloud 项目
  • OAuth 2.0 凭据

安装

# 克隆存储库
git clone https://github.com/theposch/gmail-mcp.git
cd gmail-mcp

# 设置虚拟环境
python -m venv .venv
source .venv/bin/activate  # 在 Windows 上: .venv\Scripts\activate

# 安装包
pip install -e .

Google Cloud 设置

  1. 创建一个新的 Google Cloud 项目
  2. 启用 Gmail API
  3. 配置 OAuth 同意屏幕:
    • 选择“外部”用户类型
    • 将您的电子邮件添加为测试用户
    • 添加范围:https://www.googleapis.com/auth/gmail/modify
  4. 创建 OAuth 2.0 凭据:
    • 选择“桌面应用”作为应用程序类型
    • 下载 JSON 凭据文件

配置

安全地存储您的凭据,并在运行服务器时指定其位置:

# 凭据的示例目录结构
mkdir -p ~/.gmail-mcp
# 移动您下载的凭据文件
mv ~/Downloads/client_secret_*.json ~/.gmail-mcp/credentials.json

🔧 用法

与 Claude Desktop 一起运行

将以下内容添加到您的 Claude Desktop 配置文件(通常位于 ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "gmail": {
      "command": "uv",
      "args": [
        "--directory",
        "/absolute/path/to/gmail-mcp",
        "run",
        "gmail",
        "--creds-file-path",
        "/absolute/path/to/credentials.json",
        "--token-path",
        "/absolute/path/to/tokens.json"
      ]
    }
  }
}

使用 MCP Inspector 进行测试

对于测试和调试,请使用 MCP Inspector:

npx @modelcontextprotocol/inspector uv run /path/to/gmail-mcp/src/gmail/server.py --creds-file-path /path/to/credentials.json --token-path /path/to/tokens.json

🔐 安全注意事项

  • 永远不要将凭据或令牌文件提交到版本控制
  • 将凭据存储在具有适当权限的安全位置
  • 服务器将在执行敏感操作之前请求用户确认
  • 定期查看 Google Cloud Console 以查找异常活动
  • 考虑使用环境变量来存储敏感路径

🛠️ 架构

此实现具有全面的单文件架构,可通过 Google API 客户端库处理所有 Gmail 操作。主要组件包括:

  • 具有自动令牌刷新的 OAuth2 身份验证
  • 全面的错误处理和日志记录
  • 具有清晰输入模式的结构化工具定义
  • 高效的电子邮件解析和格式化

📚 示例提示

在连接 Gmail MCP 服务器后,尝试使用 Claude 的这些提示:

  • "Show me my unread emails" (显示我的未读邮件)
  • "Search for emails from example@domain.com with attachments" (搜索来自 example@domain.com 且带有附件的邮件)
  • "Create a new label called 'Important Projects'" (创建一个名为“重要项目”的新标签)
  • "Draft an email to john@example.com about the upcoming meeting" (起草一封关于即将举行的会议的电子邮件给 john@example.com)
  • "Archive all emails from newsletter@example.com" (存档来自 newsletter@example.com 的所有电子邮件)
  • "Create a filter to automatically label emails from my team" (创建一个过滤器以自动标记来自我团队的电子邮件)

🤝 贡献

欢迎贡献!请随时提交 Pull Request。

  1. Fork 存储库
  2. 创建您的功能分支 (git checkout -b feature/amazing-feature)
  3. 提交您的更改 (git commit -m 'Add some amazing feature')
  4. 将分支推送到远程仓库 (git push origin feature/amazing-feature)
  5. 打开一个 Pull Request

📄 许可证

该项目根据 GPL-3.0 许可证获得许可 - 有关详细信息,请参见 LICENSE 文件。

🙏 致谢

  • 受到社区中各种 MCP 服务器实现的启发
  • 使用 Model Context Protocol 框架构建
  • 使用 Google 的官方 API 客户端库

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选