DeepSeek 导航网:SMTP Email MCP Server 一个提供电子邮件发送功能的模型上下文协议(MCP)服务器,适用于 Claude 和其他兼容 MCP 的 AI 助手。
特性
- 多个 SMTP 配置:配置和管理多个 SMTP 服务器
- 电子邮件模板:创建、更新和使用可重用的电子邮件模板
- 批量发送电子邮件:分批并限制速率地向多个收件人发送电子邮件
- HTML 支持:支持完整的 HTML 以丰富电子邮件内容
- 日志记录:全面记录所有电子邮件活动
- 模板变量:使用模板变量实现动态内容
安装
# Clone the repository
git clone https://github.com/samihalawa/mcp-server-smtp.git
cd mcp-server-smtp
# Install dependenciesnpm install# Build the server
npm run build
使用
启动服务器
npm start
配置
将服务器添加到您的 MCP 配置中:
{
"servers": {
"smtp-email-server": {
"command": "/path/to/node",
"args": ["/path/to/mcp-server-smtp/build/index.js"],
"enabled": true,
"port": 3007,
"environment": {
"NODE_PATH": "/path/to/node_modules",
"PATH": "/usr/local/bin:/usr/bin:/bin"
}
}
}
}
可用工具
send-email
向一个或多个收件人发送电子邮件。
参数:
to
:包含电子邮件和可选名称的收件人数组subject
:电子邮件主题body
:电子邮件正文(支持 HTML)from
:(可选)发件人电子邮件和名称cc
:(可选)抄送收件人bcc
:(可选)密送收件人templateId
:(可选)要使用的模板 IDtemplateData
:(可选)用于填充模板变量的数据smtpConfigId
:(可选)要使用的 SMTP 配置 ID
send-bulk-emails
分批向多个收件人发送电子邮件。
参数:
recipients
:包含电子邮件和可选名称的收件人数组subject
:电子邮件主题body
:电子邮件正文(支持 HTML)from
:(可选)发件人电子邮件和名称cc
:(可选)抄送收件人bcc
:(可选)密送收件人templateId
:(可选)要使用的模板 IDtemplateData
:(可选)用于填充模板变量的数据batchSize
:(可选)每批发送的电子邮件数量delayBetweenBatches
:(可选)批次之间的延迟(毫秒)smtpConfigId
:(可选)要使用的 SMTP 配置 ID
get-smtp-configs
获取所有已配置的 SMTP 服务器。
参数:无
add-smtp-config
添加新的 SMTP 服务器配置。
参数:
name
:配置名称host
:SMTP 服务器主机名port
:SMTP 服务器端口secure
:是否使用 SSL/TLSauth
:认证凭据(用户名和密码)isDefault
:(可选)这是否是默认配置
update-smtp-config
更新现有的 SMTP 服务器配置。
参数:
id
:要更新的配置 IDname
:配置名称host
:SMTP 服务器主机名port
:SMTP 服务器端口secure
:是否使用 SSL/TLSauth
:认证凭据(用户名和密码)isDefault
:(可选)这是否是默认配置
delete-smtp-config
删除 SMTP 服务器配置。
参数:
id
:要删除的配置 ID
get-email-templates
获取所有电子邮件模板。
参数:无
add-email-template
添加新的电子邮件模板。
参数:
name
: 模板名称subject
: 邮件主题模板body
: 邮件正文模板(支持 HTML)isDefault
: (可选)是否为默认模板
update-email-template
更新现有的邮件模板。
参数:
id
: 要更新的模板 IDname
: 模板名称subject
: 邮件主题模板body
: 邮件正文模板(支持 HTML)isDefault
: (可选)是否为默认模板
delete-email-template
删除一个邮件模板。
参数:
id
: 要删除的模板 ID
get-email-logs
获取已发送邮件的日志。
参数:无
示例用法
- 配置 SMTP 服务器:
add-smtp-config( name: "Gmail", host: "smtp.gmail.com", port: 587, secure: false, auth: { user: "your-email@gmail.com", pass: "your-app-password" }, isDefault: true )
- 创建一个邮件模板:
add-email-template( name: "欢迎邮件", subject: "欢迎来到 {{company}}!", body: "<h1>你好 {{name}},</h1><p>欢迎来到 {{company}}!</p>", isDefault: false )
- 使用模板发送邮件:
send-email( to: [{ email: "recipient@example.com", name: "John Doe" }], templateId: "welcome-email", templateData: { name: "John", company: "ACME Corp" } )
- 批量发送邮件:
send-bulk-emails( recipients: [ { email: "user1@example.com", name: "User 1" }, { email: "user2@example.com", name: "User 2" } ], subject: "重要通知", body: "<p>这是一条重要通知。</p>", batchSize: 10, delayBetweenBatches: 1000 )
要求
- Node.js 14+
- Nodemailer 用于发送邮件
- 访问 SMTP 服务器的权限
许可证
MIT
专门用于将SVG图像插入到PowerPoint演示文稿中