gmail-mcp-server

gmail-mcp-server

site icon
2025.04.21 1
PythonGmail API 集成邮件管理标签管理交流协作
gmail-mcp-server 是一个通过 Model Context Protocol (MCP) 暴露 Gmail API 的服务,专为与大型语言模型 (LLMs) 集成和在 Claude Desktop 等环境中使用而设计。它提供了一系列工具来管理和操作 Gmail 的标签和邮件,包括获取、创建、更新和删除标签,以及标记邮件为已读或未读、添加标签到邮件、获取邮件详情等功能。
View on GitHub

Overview

基本能力

产品定位

gmail-mcp-server 是一个中间件服务,旨在通过 MCP 协议将 Gmail 的功能暴露给 LLMs 和其他客户端使用,特别是在 Claude Desktop 环境中。

核心功能

  • 获取和管理 Gmail 标签
  • get_labels(): 获取所有用户标签
  • get_label_by_id(label_id): 获取特定标签的详细信息
  • create_label(name, bg_color, text_color): 创建新标签
  • update_label(label_id, name, bg_color, text_color): 更新现有标签
  • delete_label(label_id): 删除标签

  • 邮件管理

  • mark_emails_as_read(emails_ids: List[str]): 标记邮件为已读
  • mark_emails_as_unread(emails_ids: List[str]): 标记邮件为未读
  • add_labels(emails_ids: List[str], labels: List[str]): 为邮件添加标签
  • get_all_emails_ids_by_query(query: str, max_results: int, next_page_token: str = None): 根据查询获取邮件 ID 列表
  • get_email_detail(email_id: str): 获取邮件详细信息

适用场景

  • 在 Claude Desktop 等环境中集成 Gmail 功能
  • 通过 LLMs 自动化处理 Gmail 邮件和标签
  • 开发需要访问 Gmail API 的应用程序

工具列表

  • get_labels(): 获取所有 Gmail 标签
  • get_label_by_id(label_id): 获取特定标签信息
  • create_label(name, bg_color, text_color): 创建新标签
  • update_label(label_id, name, bg_color, text_color): 更新标签
  • delete_label(label_id): 删除标签
  • mark_emails_as_read(emails_ids): 标记邮件为已读
  • mark_emails_as_unread(emails_ids): 标记邮件为未读
  • add_labels(emails_ids, labels): 为邮件添加标签
  • get_all_emails_ids_by_query(query, max_results, next_page_token): 根据查询获取邮件 ID
  • get_email_detail(email_id): 获取邮件详情

常见问题解答

  • 如何获取 Google API 凭证? 需要创建 OAuth 2.0 凭证并设置 GOOGLE_CLIENT_IDGOOGLE_CLIENT_SECRET 环境变量
  • 如何集成到 Claude Desktop? 需要在 Claude Desktop 配置文件中指定 gmail-mcp-server 的路径和凭证

使用教程

使用依赖

  1. 安装 Python 3.11 或更高版本
  2. 安装 uv 依赖管理工具

安装教程

  1. 克隆仓库: bash git clone <URL_DEL_REPOSITORIO> cd gmail-mcp-server
  2. 安装依赖: bash uv pip install -r uv.lock
  3. (可选) 构建包: bash uv run -m build
  4. 安装本地包: bash uv pip install dist/gmail_mcp_server-0.1.0-py3-none-any.whl

调试方式

  1. 设置 Google API 凭证环境变量: bash export GOOGLE_CLIENT_ID="TU_ID" export GOOGLE_CLIENT_SECRET="TU_SECRET"
  2. 运行服务: bash gmail-mcp-server
  3. 在 Claude Desktop 配置文件中添加服务配置

许可证

该项目遵循 MIT 开源许可条款,请参阅 MIT 了解完整条款。