Gmail邮件管理服务器

一个连接AI代理与Gmail的模型上下文协议服务器,提供安全的邮件管理、客户数据导入和批量邮件发送功能。

  • by JosephAwuku33
  • TypeScript
  • 本地部署
  • 更新于
在 GitHub 查看 JosephAwuku33/wave-gmail-mcp

使用说明

📨 Gmail MCP服务器

一个强大的模型上下文协议(MCP)服务器,将您的AI代理连接到Gmail。

此服务器允许AI模型(如Claude)安全地与您的邮箱交互。除了阅读和发送电子邮件,它还具有 客户互动系统 它使您能够通过本地拖放界面上传客户数据(CSV/Excel),并执行个性化的批量电子邮件活动。


✨ 特性

  • 🔐 安全身份验证: 使用OAuth2向Google进行身份验证。令牌保存在本地,因此您只需登录一次。
  • 📧 完整电子邮件管理: 阅读电子邮件,搜索您的历史记录,并发送新消息。
  • 📊 客户数据导入: A内置 本地web界面 拖放包含客户列表的CSV或XLSX文件。
  • 🚀 批量活动: 使用占位符向您上传的客户列表发送个性化电子邮件(例如。, Hi {name}, check out {product}!).
  • 💾 数据持久性: 客户数据在本地缓存,因此可以在服务器重启后继续使用。
  • 🛡️ 类型安全: 使用TypeScript构建,具有可靠性和健壮性。

🛠️ 先决条件

在运行服务器之前,您需要:

  1. Node.js (v16或更高版本)安装在您的计算机上。
  2. A. 谷歌云项目 随着 Gmail API 启用。
  3. OAuth凭据 (客户端ID和客户端密码)。

👉 谷歌云设置说明: 确保您的OAuth同意屏幕已设置,并且您已添加 http://localhost:3000/oauth2callback 给你的 授权重定向URI.


⚙️ 安装和设置

1.克隆和安装

# Clone the repository
git clone <your-repo-url>
cd gmail-mcp-server

# Install dependencies
pnpm install

2.配置环境变量

创建一个 .env 项目根目录中的文件。您可以复制下面的模板:

# .env file
GOOGLE_CLIENT_ID=your_client_id_here.apps.googleusercontent.com
GOOGLE_CLIENT_SECRET=your_client_secret_here
GOOGLE_REDIRECT_URI=http://localhost:3000/oauth2callback
OAUTH_PORT=3000

3.建设项目

将TypeScript代码编译成JavaScript

pnpm run build

🚀 用法

独立运行 您可以直接运行服务器进行测试(尽管它被设计为由像Claude及其主机Claude Desktop这样的MCP客户端运行)。

连接到克劳德桌面 🤖 要将其与Claude一起使用,您需要将其添加到您的 claude_desktop_config.json 文件。

位置:

  • 苹果电脑 ~/Library/Application Support/Claude/claude_desktop_config.json
  • 视窗: %APPDATA%\Claude\claude_desktop_config.json

配置:将以下条目添加到mcpServers对象中。重要提示:使用绝对路径。

{
  "mcpServers": {
    "gmail-mcp": {
      "command": "node",
      "args": ["/ABSOLUTE/PATH/TO/YOUR/PROJECT/dist/index.js"],
      "env": {
        "GOOGLE_CLIENT_ID": "your_client_id_here",
        "GOOGLE_CLIENT_SECRET": "your_client_secret_here",
        "GOOGLE_REDIRECT_URI": "http://localhost:3000/oauth2callback"
      }
    }
  }
}

💡 提示: 通过Claude Desktop运行时,直接在JSON配置中传递环境变量通常比依赖.env文件更可靠

🧰 可用工具

工具名称 描述
authenticate_gmail 启动OAuth流程以让您登录
start_upload_server 打开本地网页,轻松上传Excel/CSV文件。
upload_customer_data 如果您已准备好文件路径,请使用手动上传工具。
send_email 发送一封纯文本或HTML电子邮件。
send_bulk_email 向您上传的列表中的每个人发送个性化电子邮件。
search_emails 使用Gmail搜索语法查找电子邮件(例如。, from:boss).

⚠️ 故障排除

  • 浏览器无法打开: 如果身份验证链接没有自动打开,该工具将提供一个URL。复制并粘贴到您的浏览器中。
  • “缺少客户端ID”: 确保在Claude配置中使用绝对路径,或者.env文件位于正确的根文件夹中。
  • 上传错误: 确保您的CSV/Excel文件有标题。您需要告诉工具哪个列包含电子邮件(默认为“电子邮件”)。

参考