SMTP邮件
STDIO支持SMTP配置和模板的邮件发送服务器
支持SMTP配置和模板的邮件发送服务器
A Model Context Protocol (MCP) server that provides email sending capabilities for Claude and other MCP-compatible AI assistants.
To install SMTP Email Server for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @samihalawa/mcp-server-smtp --client claude
# 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
Add the server to your MCP configuration:
{ "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 an email to one or more recipients.
Parameters:
to: Array of recipients with email and optional namesubject: Email subjectbody: Email body (HTML supported)from: (Optional) Sender email and namecc: (Optional) CC recipientsbcc: (Optional) BCC recipientstemplateId: (Optional) ID of a template to usetemplateData: (Optional) Data to populate template variablessmtpConfigId: (Optional) ID of the SMTP configuration to useSend emails to multiple recipients in batches.
Parameters:
recipients: Array of recipients with email and optional namesubject: Email subjectbody: Email body (HTML supported)from: (Optional) Sender email and namecc: (Optional) CC recipientsbcc: (Optional) BCC recipientstemplateId: (Optional) ID of a template to usetemplateData: (Optional) Data to populate template variablesbatchSize: (Optional) Number of emails to send in each batchdelayBetweenBatches: (Optional) Delay in milliseconds between batchessmtpConfigId: (Optional) ID of the SMTP configuration to useGet all configured SMTP servers.
Parameters: None
Add a new SMTP server configuration.
Parameters:
name: Name for the configurationhost: SMTP server hostnameport: SMTP server portsecure: Whether to use SSL/TLSauth: Authentication credentials (user and pass)isDefault: (Optional) Whether this is the default configurationUpdate an existing SMTP server configuration.
Parameters:
id: ID of the configuration to updatename: Name for the configurationhost: SMTP server hostnameport: SMTP server portsecure: Whether to use SSL/TLSauth: Authentication credentials (user and pass)isDefault: (Optional) Whether this is the default configurationDelete an SMTP server configuration.
Parameters:
id: ID of the configuration to deleteGet all email templates.
Parameters: None
Add a new email template.
Parameters:
name: Template namesubject: Email subject templatebody: Email body template (HTML supported)isDefault: (Optional) Whether this is the default templateUpdate an existing email template.
Parameters:
id: ID of the template to updatename: Template namesubject: Email subject templatebody: Email body template (HTML supported)isDefault: (Optional) Whether this is the default templateDelete an email template.
Parameters:
id: ID of the template to deleteGet logs of sent emails.
Parameters: None
Configure an SMTP server:
add-smtp-config(
  name: "Gmail",
  host: "smtp.gmail.com",
  port: 587,
  secure: false,
  auth: {
    user: "[email protected]",
    pass: "your-app-password"
  },
  isDefault: true
)
Create an email template:
add-email-template(
  name: "Welcome Email",
  subject: "Welcome to {{company}}!",
  body: "<h1>Hello {{name}},</h1><p>Welcome to {{company}}!</p>",
  isDefault: false
)
Send an email using a template:
send-email(
  to: [{ email: "[email protected]", name: "John Doe" }],
  templateId: "welcome-email",
  templateData: {
    name: "John",
    company: "ACME Corp"
  }
)
Send bulk emails:
send-bulk-emails(
  recipients: [
    { email: "[email protected]", name: "User 1" },
    { email: "[email protected]", name: "User 2" }
  ],
  subject: "Important Announcement",
  body: "<p>This is an important announcement.</p>",
  batchSize: 10,
  delayBetweenBatches: 1000
)
MIT