这是一个提供邮件发送能力的模型上下文协议(MCP)服务器,适用于 Claude 和其他兼容 MCP 的 AI 助手。
要通过 Smithery 自动安装 Claude Desktop 的 SMTP 邮件服务器:
npx -y @smithery/cli install @samihalawa/mcp-server-smtp --client claude
# 克隆仓库
git clone https://github.com/samihalawa/mcp-server-smtp.git
cd mcp-server-smtp
# 安装依赖
npm install
# 构建服务器
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"
}
}
}
}
向一个或多个收件人发送邮件。
参数:
to:收件人的数组,包括电子邮件地址和可选的名字subject:邮件主题body:邮件正文(支持 HTML)from:(可选)发件人的电子邮件地址和名字cc:(可选)抄送收件人bcc:(可选)密送收件人templateId:(可选)使用的模板 IDtemplateData:(可选)填充模板变量的数据smtpConfigId:(可选)使用的 SMTP 配置 ID批量向多个收件人发送邮件。
参数:
recipients:收件人的数组,包括电子邮件地址和可选的名字subject:邮件主题body:邮件正文(支持 HTML)from:(可选)发件人的电子邮件地址和名字cc:(可选)抄送收件人bcc:(可选)密送收件人templateId:(可选)使用的模板 IDtemplateData:(可选)填充模板变量的数据batchSize:(可选)每个批次发送的邮件数量delayBetweenBatches:(可选)批次之间的延迟时间(毫秒)smtpConfigId:(可选)使用的 SMTP 配置 ID获取所有已配置的 SMTP 服务器。
参数:无
添加一个新的 SMTP 服务器配置。
参数:
name:配置的名称host:SMTP 服务器主机名port:SMTP 服务器端口secure:是否使用 SSL/TLSauth:认证凭据(用户名和密码)isDefault:(可选)是否为默认配置更新现有的 SMTP 服务器配置。
参数:
id:需要更新的配置 IDname:配置的名称host:SMTP 服务器主机名port:SMTP 服务器端口secure:是否使用 SSL/TLSauth:认证凭据(用户名和密码)isDefault:(可选)是否为默认配置删除 SMTP 服务器配置。
参数:
id:需要删除的配置 ID获取所有邮件模板。
参数:无
添加一个新的邮件模板。
参数:
name:模板名称subject:邮件主题模板body:邮件正文模板(支持 HTML)isDefault:(可选)是否为默认模板更新现有的邮件模板。
参数:
id:需要更新的模板 IDname:模板名称subject:邮件主题模板body:邮件正文模板(支持 HTML)isDefault:(可选)是否为默认模板删除邮件模板。
参数:
id:需要删除的模板 ID获取已发送邮件的日志。
参数:无
配置 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: "用户1" },
{ email: "user2@example.com", name: "用户2" }
],
subject: "重要公告",
body: "<p>这是一条重要公告。</p>",
batchSize: 10,
delayBetweenBatches: 1000
)
MIT