article
README
🚀 发邮件 MCP 使用说明
本项目提供了一种便捷的方式来发送邮件,通过配置相应的 MCP 服务,你可以轻松实现邮件的发送功能,支持普通邮件和带附件邮件的发送。
🚀 快速开始
配置指南
Windows 系统配置
- 打开 Cursor 编辑器,找到或创建
mcp.json文件,其路径为:C:\Users\你的用户名\.cursor\mcp.json。 - 向文件中添加或修改以下内容:
{
"mcpServers": {
"mail-mcp": {
"command": "pythonw",
"args": [
"C:\\Users\\你的用户名\\mcp-mail\\bridging_mail_mcp.py"
],
"env": {
"NODEMAILER_SMTP_HOST": "smtp.example.com",
"NODEMAILER_SMTP_PORT": "587",
"NODEMAILER_SMTP_USER": "your.email@example.com",
"NODEMAILER_SMTP_PASSWORD": "your_password",
"IMAP_CLIENT_EMAIL_ADDRESS": "your.email@example.com",
"IMAP_CLIENT_PASSWORD": "your_password"
}
}
}
}
⚠️ 重要提示
- 请将
你的用户名替换为实际的 Windows 用户名。- 要确保路径正确指向项目文件的实际位置。
- 切勿删除或移动项目文件夹。
macOS 系统配置
- 打开终端,运行命令:
cd ~ && ls -a查看隐藏目录。 - 在
~/.cursor/目录下创建或编辑mcp.json文件。 - 向文件中添加以下内容:
{
"mcpServers": {
"mail-mcp": {
"command": "pythonw",
"args": [
"/Users/你的用户名/mcp-mail/bridging_mail_mcp.py"
],
"env": {
"NODEMAILER_SMTP_HOST": "smtp.example.com",
"NODEMAILER_SMTP_PORT": "587",
"NODEMAILER_SMTP_USER": "your.email@example.com",
"NODEMAILER_SMTP_PASSWORD": "your_password",
"IMAP_CLIENT_EMAIL_ADDRESS": "your.email@example.com",
"IMAP_CLIENT_PASSWORD": "your_password"
}
}
}
}
⚠️ 重要提示
- 请将
你的用户名替换为实际的 macOS 用户名。- 要确保路径正确指向项目文件的实际位置。
- 切勿删除或移动项目文件夹。
Linux 系统配置
- 打开终端,运行命令:
cd ~ && ls -a查看隐藏目录。 - 在
~/.cursor/目录下创建或编辑mcp.json文件。 - 向文件中添加以下内容:
{
"mcpServers": {
"mail-mcp": {
"command": "pythonw",
"args": [
"/home/你的用户名/mcp-mail/bridging_mail_mcp.py"
],
"env": {
"NODEMAILER_SMTP_HOST": "smtp.example.com",
"NODEMAILER_SMTP_PORT": "587",
"NODEMAILER_SMTP_USER": "your.email@example.com",
"NODEMAILER_SMTP_PASSWORD": "your_password",
"IMAP_CLIENT_EMAIL_ADDRESS": "your.email@example.com",
"IMAP_CLIENT_PASSWORD": "your_password"
}
}
}
}
⚠️ 重要提示
- 请将
你的用户名替换为实际的 Linux 用户名。- 要确保路径正确指向项目文件的实际位置。
- 切勿删除或移动项目文件夹。
启动服务
- 打开终端,运行以下命令启动 MCP 服务:
npm start mcp
- 查看控制台输出,确认服务启动成功。
💻 使用示例
基础用法
const mcp = require('mcp');
// 发送普通邮件
mcp.sendEmail({
from: 'your.email@example.com',
to: 'recipient@example.com',
subject: '测试邮件',
text: '这是一封测试邮件'
}).then(() => {
console.log('邮件发送成功');
}).catch(error => {
console.error('发送失败:', error);
});
高级用法
// 发送带附件的邮件
mcp.sendEmail({
from: 'your.email@example.com',
to: 'recipient@example.com',
subject: '带附件的测试邮件',
text: '请查收附件',
attachments: [
{
filename: 'test.txt',
content: '这是附件内容'
}
]
}).then(() => {
console.log('邮件发送成功');
}).catch(error => {
console.error('发送失败:', error);
});
📚 详细文档
邮件发送流程
- 初始化 MCP 服务:配置 SMTP 和 IMAP 参数,建立与邮件服务器的连接。
- 创建邮件内容:包括发件人、收件人、主题和正文等信息。
- 添加附件(可选):将文件附加到邮件中。
- 发送邮件:通过 SMTP 协议将邮件发送到目标邮箱。
技术实现
- 使用
nodeMailer库处理 SMTP 通信。 - 使用
mail客户端库处理 IMAP 操作。 - 支持附件处理和多种邮件格式。
- 提供错误处理和日志记录功能。
🔧 技术细节
其他说明
- 依赖项:需要安装
nodeMailer和mail客户端库。 - 环境变量:配置 SMTP 和 IMAP 信息通过环境变量实现。
📄 许可证
本项目遵循 MIT 许可证,可以自由使用和修改。
如果有任何问题,请联系技术支持。
扫码联系在线客服