SMTP 邮件服务器
办公效率
SMTP 邮件服务器
🔥 热度:5

电子邮件发送功能的模型上下文协议

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 dependencies
npm 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:(可选)要使用的模板 ID
  • templateData:(可选)用于填充模板变量的数据
  • smtpConfigId:(可选)要使用的 SMTP 配置 ID

send-bulk-emails

分批向多个收件人发送电子邮件。

参数:

  • recipients:包含电子邮件和可选名称的收件人数组
  • subject:电子邮件主题
  • body:电子邮件正文(支持 HTML)
  • from:(可选)发件人电子邮件和名称
  • cc:(可选)抄送收件人
  • bcc:(可选)密送收件人
  • templateId:(可选)要使用的模板 ID
  • templateData:(可选)用于填充模板变量的数据
  • batchSize:(可选)每批发送的电子邮件数量
  • delayBetweenBatches:(可选)批次之间的延迟(毫秒)
  • smtpConfigId:(可选)要使用的 SMTP 配置 ID

get-smtp-configs

获取所有已配置的 SMTP 服务器。

参数:无

add-smtp-config

添加新的 SMTP 服务器配置。

参数:

  • name:配置名称
  • host:SMTP 服务器主机名
  • port:SMTP 服务器端口
  • secure:是否使用 SSL/TLS
  • auth:认证凭据(用户名和密码)
  • isDefault:(可选)这是否是默认配置

update-smtp-config

更新现有的 SMTP 服务器配置。

参数:

  • id:要更新的配置 ID
  • name:配置名称
  • host:SMTP 服务器主机名
  • port:SMTP 服务器端口
  • secure:是否使用 SSL/TLS
  • auth:认证凭据(用户名和密码)
  • isDefault:(可选)这是否是默认配置

delete-smtp-config

删除 SMTP 服务器配置。

参数:

  • id:要删除的配置 ID

get-email-templates

获取所有电子邮件模板。

参数:无

add-email-template

添加新的电子邮件模板。

参数:

  • name: 模板名称
  • subject: 邮件主题模板
  • body: 邮件正文模板(支持 HTML)
  • isDefault: (可选)是否为默认模板

update-email-template

更新现有的邮件模板。

参数:

  • id: 要更新的模板 ID
  • name: 模板名称
  • subject: 邮件主题模板
  • body: 邮件正文模板(支持 HTML)
  • isDefault: (可选)是否为默认模板

delete-email-template

删除一个邮件模板。

参数:

  • id: 要删除的模板 ID

get-email-logs

获取已发送邮件的日志。

参数:无

示例用法

  1. 配置 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
    )
    
  2. 创建一个邮件模板:
    add-email-template(
      name: "欢迎邮件",
      subject: "欢迎来到 {{company}}!",
      body: "<h1>你好 {{name}},</h1><p>欢迎来到 {{company}}!</p>",
      isDefault: false
    )
    
  3. 使用模板发送邮件:
    send-email(
      to: [{ email: "recipient@example.com", name: "John Doe" }],
      templateId: "welcome-email",
      templateData: {
        name: "John",
        company: "ACME Corp"
      }
    )
    
  4. 批量发送邮件:
    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

相关推荐