@timecyber/universal-email-mcp
v1.0.0
Published
通用邮箱MCP服务器 - 支持QQ、163、Gmail(由于谷歌政策不支持OAuth2.0,所以无法使用)、Outlook、企业邮箱等多种邮箱服务商的自动配置和邮件发送功能
Maintainers
Readme
📧 邮箱 MCP Server
一个让AI轻松接管邮箱的MCP服务,基于 Model Context Protocol (MCP) 构建,支持在 MCP-X,Claude Desktop 等 MCP 客户端中使用。
✨ 功能特性
- 📤 邮件发送: 支持发送HTML和纯文本邮件
- 👥 多收件人: 支持多个收件人、抄送、密送
- 📎 附件支持: 支持文件附件和Base64编码内容
- 🔧 动态配置: 支持运行时配置邮箱服务器
- 🔍 连接测试: 内置SMTP服务器连接测试
- 🛡️ 安全认证: 支持微信企业邮箱授权码认证
- ⚡ 高性能: 优化的连接超时和重试机制
📚 详细配置指南
项目提供了详细的配置指南,包含各大邮箱服务商的配置说明:
📖 CONFIG_GUIDE.md - 完整配置指南,包含:
- 📧 163邮箱详细配置教程
- 🏢 微信企业邮箱配置指南
- 🌐 QQ邮箱、Gmail等主流邮箱配置
- 🛠️ 故障排除和常见问题解决
📋 系统要求
- Node.js 16.x 或更高版本
- 邮箱账号
- MCP 客户端 (如 Claude Desktop)
🚀 快速开始
1. 安装依赖
npm install2. 配置腾讯企业邮箱
获取授权码
- 访问 企业邮箱管理后台
- 进入 "设置" → "账户" → "客户端专用密码"
- 生成 客户端专用密码 (授权码)
- 进入 "设置" → "收发信设置" → "设置方法"
- 开启 "POP/IMAP/SMTP服务"
3. 配置 MCP 客户端
MCP-X 配置
在 工具管理 中添加:
个人邮箱配置:
{
"mcpServers": {
"universal-email": {
"command": "node",
"args": ["F:\\enterprise\\mail\\index.js"],
"env": {
"EMAIL_USER": "[email protected]",
"EMAIL_PASSWORD": "your-password-or-auth-code",
"EMAIL_TYPE": "auto"
}
}
}
}企业邮箱配置:
{
"mcpServers": {
"enterprise-email": {
"command": "node",
"args": ["F:\\enterprise\\mail\\index.js"],
"env": {
"EMAIL_USER": "[email protected]",
"EMAIL_PASSWORD": "your-enterprise-auth-code",
"EMAIL_TYPE": "exmail"
}
}
}
}💡 关键提示: 企业邮箱必须设置 EMAIL_TYPE 字段!
📖 CONFIG_GUIDE.md - 完整配置指南,包含所有邮箱类型详细说明
重要: 请将 [email protected] 和 your-authorization-code 替换为您的实际邮箱地址和授权码。
本地开发配置
为了保护敏感信息,推荐使用本地配置文件:
- 复制
mcp-x-config.json为mcp-x-config.local.json - 在本地文件中填入真实的邮箱账号和密码
- 本地配置文件已被
.gitignore保护,不会被提交到版本控制
4. 测试配置
# 测试邮件配置是否成功
node test-auto-config.js🔧 MCP 工具说明
1. send_email - 发送邮件
发送邮件,支持多种格式和收件人。
参数
to(必需): 收件人邮箱地址数组subject(必需): 邮件主题text(必需): 纯文本邮件内容cc(可选): 抄送邮箱地址数组bcc(可选): 密送邮箱地址数组html(可选): HTML格式邮件内容attachments(可选): 附件数组
使用示例
基本邮件发送:
{
"to": ["[email protected]"],
"subject": "测试邮件",
"text": "这是一封测试邮件"
}带抄送和HTML内容:
{
"to": ["[email protected]", "[email protected]"],
"cc": ["[email protected]"],
"subject": "项目报告",
"text": "请查看项目报告",
"html": "<h1>项目报告</h1><p>项目进展顺利。</p>"
}带附件的邮件:
{
"to": ["[email protected]"],
"subject": "带附件的邮件",
"text": "请查看附件",
"attachments": [
{
"filename": "report.pdf",
"path": "C:\\path\\to\\report.pdf"
},
{
"filename": "data.txt",
"content": "SGVsbG8gV29ybGQ="
}
]
}2. get_recent_emails - 获取最近邮件
获取最近几天的邮件列表,自动选择最佳协议(IMAP/POP3)。
参数
limit(可选): 返回邮件数量限制,默认20days(可选): 获取最近几天的邮件,默认3天
使用示例
{
"limit": 10,
"days": 7
}3. get_email_content - 获取邮件内容
获取指定邮件的详细内容。
参数
uid(必需): 邮件唯一标识符(从邮件列表中获取)
使用示例
{
"uid": "12345"
}4. setup_email_account - 设置邮箱账号
自动识别邮箱类型并配置服务器,支持8大邮箱服务商。
参数
email(必需): 邮箱地址password(必需): 邮箱密码或授权码provider(可选): 邮箱提供商(手动指定,用于企业邮箱)
支持的邮箱类型
qq- QQ邮箱163- 网易邮箱gmail- Gmailoutlook- Outlook/Hotmailexmail- 腾讯企业邮箱netease-enterprise- 网易企业邮箱aliyun- 阿里云邮箱sina- 新浪邮箱sohu- 搜狐邮箱
使用示例
个人邮箱(自动识别):
{
"email": "[email protected]",
"password": "your-auth-code"
}企业邮箱(手动指定):
{
"email": "[email protected]",
"password": "your-enterprise-auth-code",
"provider": "exmail"
}5. list_supported_providers - 列出支持的邮箱
查看所有支持的邮箱服务商及其配置信息。
参数
无需参数
使用示例
{}6. configure_email_server - 手动配置服务器
手动配置邮箱服务器设置(高级用户使用)。
参数
user(必需): 邮箱账号password(必需): 邮箱密码或授权码smtpHost(可选): SMTP服务器地址smtpPort(可选): SMTP端口smtpSecure(可选): 是否使用SSLimapHost(可选): IMAP服务器地址imapPort(可选): IMAP端口imapSecure(可选): 是否使用SSL
使用示例
{
"user": "[email protected]",
"password": "your-password",
"smtpHost": "smtp.domain.com",
"smtpPort": 465,
"smtpSecure": true
}7. test_email_connection - 测试连接
测试邮箱服务器连接状态。
参数
testType(可选): 测试类型smtp- 仅测试发送服务器imap- 仅测试接收服务器both- 测试全部(默认)
使用示例
{
"testType": "smtp"
}📊 支持的邮箱服务商
主流邮箱服务器配置
| 邮箱类型 | SMTP服务器 | SMTP端口 | IMAP服务器 | IMAP端口 | 推荐协议 | |---------|------------|----------|------------|----------|----------| | QQ邮箱 | smtp.qq.com | 587 | imap.qq.com | 993 | IMAP | | 网易邮箱 | smtp.163.com | 465 | imap.163.com | 993 | POP3* | | Gmail* | smtp.gmail.com | 587 | imap.gmail.com | 993 | IMAP | | Outlook | smtp-mail.outlook.com | 587 | outlook.office365.com | 993 | IMAP | | 腾讯企业邮箱 | smtp.exmail.qq.com | 465 | imap.exmail.qq.com | 993 | IMAP |
