使用说明
Gmail发件人MCP服务器
一个MCP(模型上下文协议)服务器,可以通过Gmail API发送电子邮件和创建草稿。
特性
- send电子邮件:通过您的Gmail帐户发送带有可选文件附件的电子邮件
- 创建草稿:创建带有可选文件附件的电子邮件草稿
- 使用Google进行OAuth 2.0身份验证
- 支持各种类型的文件附件(PDF、DOC、图像等)
- 随时随地奔跑
npx-无需本地安装
先决条件
- Node.js v18或更高版本
- 启用Gmail API的谷歌云项目
- OAuth 2.0凭据(客户端ID和客户端密钥)
设置Google Cloud凭据
- 去 谷歌云控制台
- 创建新项目或选择现有项目
- 为您的项目启用Gmail API
- 首选 凭证 并创建一个 OAuth 2.0客户端ID
- 将应用程序类型设置为 Web应用程序
- 添加
http://localhost:3500/oauth2callback作为授权重定向URI - 保存您的客户端ID和客户端密码
安装与使用
使用npx运行(推荐)
使用此服务器的最简单方法是 npx无需安装:
GMAIL_CLIENT_ID=your_client_id GMAIL_CLIENT_SECRET=your_client_secret npx gmail-sender-mcp-server
全球安装
npm install -g gmail-sender-mcp-server
然后运行:
GMAIL_CLIENT_ID=your_client_id GMAIL_CLIENT_SECRET=your_client_secret gmail-sender-mcp-server
本地安装(用于开发)
git clone <repository-url>
cd Gmail_MCP_server
npm install
GMAIL_CLIENT_ID=your_client_id GMAIL_CLIENT_SECRET=your_client_secret npm start
认证
首次运行时,服务器将在端口3500上启动OAuth服务器:
- 访问
http://localhost:3500/auth在浏览器中 - 使用您的Google帐户登录并授予权限
- 身份验证令牌将保存到
~/.config/gmail-sender-mcp-server/token.json
令牌存储在您的主目录中,因此它会在 npx 经过身份验证后,可以在不同的机器上运行和工作。
环境变量
| 变量 | 必填 | 描述 |
|---|---|---|
GMAIL_CLIENT_ID |
是 | 您的Google OAuth 2.0客户端ID |
GMAIL_CLIENT_SECRET |
是 | 您的Google OAuth 2.0客户端密码 |
MCP配置
要将此服务器与MCP客户端(如Claude Desktop)一起使用,请将其添加到MCP配置中:
{
"mcpServers": {
"gmail-sender": {
"type": "stdio",
"command": "npx",
"args": ["gmail-sender-mcp-server"],
"env": {
"GMAIL_CLIENT_ID": "your_client_id",
"GMAIL_CLIENT_SECRET": "your_client_secret"
}
}
}
}
可用工具
send电子邮件
立即通过Gmail发送电子邮件。
参数:
recipient(必填):收件人的电子邮件地址subject(必填):电子邮件的主题行body(必填):电子邮件正文(纯文本)attachmentPath(可选):要附加的文件的绝对路径
例子:
{
"recipient": "example@email.com",
"subject": "Hello from MCP",
"body": "This is a test email sent via the Gmail MCP server.",
"attachmentPath": "/path/to/document.pdf"
}
创建草稿
在Gmail中创建电子邮件草稿(不自动发送)。
参数:
recipient(必填):收件人的电子邮件地址subject(必填):电子邮件的主题行body(必填):电子邮件正文(纯文本)attachmentPath(可选):要附加的文件的绝对路径
例子:
{
"recipient": "example@email.com",
"subject": "Draft Email",
"body": "This is a draft that can be reviewed and sent later.",
"attachmentPath": "/path/to/image.png"
}
支持的附件类型
服务器会根据扩展名自动检测文件类型:
- 文档:PDF、DOC、DOCX、TXT
- 图片:JPG、JPEG、PNG、gif
- 档案:ZIP
- 其他文件以以下方式发送
application/octet-stream
OAuth范围
服务器使用 https://www.googleapis.com/auth/gmail.compose 范围,允许:
- 创建和发送电子邮件
- 创建草稿
- 修改草稿
文件结构
gmail-sender-mcp-server/
├── src/
│ └── index.js # Main server implementation
├── package.json # Dependencies and scripts
└── README.md # This file
~/.config/gmail-sender-mcp-server/
└── token.json # OAuth tokens (created after authentication)
安全说明
- OAuth令牌存储在
~/.config/gmail-sender-mcp-server/token.json并且应该保持安全 - 客户端ID和Secret应通过环境变量传递,而不是提交给版本控制
- OAuth服务器仅在本地主机(端口3500)上运行
- 考虑在生产部署中使用机密管理器
故障排除
身份验证问题
- 确保您的OAuth客户端配置了
http://localhost:3500/oauth2callback作为重定向URI - 检查Gmail API是否已在您的谷歌云项目中启用
- 验证您的
GMAIL_CLIENT_ID和GMAIL_CLIENT_SECRET环境变量设置正确
令牌问题
- 如果身份验证失败,请删除
~/.config/gmail-sender-mcp-server/token.json并重新验证 - 代币可能会过期;如果出现授权错误,请重新进行身份验证
文件附件问题
- 附件使用绝对路径
- 确保文件存在并且可读
- 检查文件大小是否在Gmail的限制范围内(附件为25MB)
许可证
麻省理工学院