Skip to main content
Glama

SMTP MCP Server

SMTP Email MCP Server

A Model Context Protocol (MCP) server that provides email sending capabilities for Claude and other MCP-compatible AI assistants.

Features

  • Multiple SMTP Configurations: Configure and manage multiple SMTP servers
  • Email Templates: Create, update, and use reusable email templates
  • Bulk Email Sending: Send emails to multiple recipients with batching and rate limiting
  • HTML Support: Full HTML support for rich email content
  • Logging: Comprehensive logging of all email activities
  • Template Variables: Dynamic content using template variables

Installation

# 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

Usage

Starting the Server

npm start

Configuration

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" } } } }

Available Tools

send-email

Send an email to one or more recipients.

Parameters:

  • to: Array of recipients with email and optional name
  • subject: Email subject
  • body: Email body (HTML supported)
  • from: (Optional) Sender email and name
  • cc: (Optional) CC recipients
  • bcc: (Optional) BCC recipients
  • templateId: (Optional) ID of a template to use
  • templateData: (Optional) Data to populate template variables
  • smtpConfigId: (Optional) ID of the SMTP configuration to use
send-bulk-emails

Send emails to multiple recipients in batches.

Parameters:

  • recipients: Array of recipients with email and optional name
  • subject: Email subject
  • body: Email body (HTML supported)
  • from: (Optional) Sender email and name
  • cc: (Optional) CC recipients
  • bcc: (Optional) BCC recipients
  • templateId: (Optional) ID of a template to use
  • templateData: (Optional) Data to populate template variables
  • batchSize: (Optional) Number of emails to send in each batch
  • delayBetweenBatches: (Optional) Delay in milliseconds between batches
  • smtpConfigId: (Optional) ID of the SMTP configuration to use
get-smtp-configs

Get all configured SMTP servers.

Parameters: None

add-smtp-config

Add a new SMTP server configuration.

Parameters:

  • name: Name for the configuration
  • host: SMTP server hostname
  • port: SMTP server port
  • secure: Whether to use SSL/TLS
  • auth: Authentication credentials (user and pass)
  • isDefault: (Optional) Whether this is the default configuration
update-smtp-config

Update an existing SMTP server configuration.

Parameters:

  • id: ID of the configuration to update
  • name: Name for the configuration
  • host: SMTP server hostname
  • port: SMTP server port
  • secure: Whether to use SSL/TLS
  • auth: Authentication credentials (user and pass)
  • isDefault: (Optional) Whether this is the default configuration
delete-smtp-config

Delete an SMTP server configuration.

Parameters:

  • id: ID of the configuration to delete
get-email-templates

Get all email templates.

Parameters: None

add-email-template

Add a new email template.

Parameters:

  • name: Template name
  • subject: Email subject template
  • body: Email body template (HTML supported)
  • isDefault: (Optional) Whether this is the default template
update-email-template

Update an existing email template.

Parameters:

  • id: ID of the template to update
  • name: Template name
  • subject: Email subject template
  • body: Email body template (HTML supported)
  • isDefault: (Optional) Whether this is the default template
delete-email-template

Delete an email template.

Parameters:

  • id: ID of the template to delete
get-email-logs

Get logs of sent emails.

Parameters: None

Example Usage

  1. Configure an SMTP server:
    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. 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 )
  3. Send an email using a template:
    send-email( to: [{ email: "recipient@example.com", name: "John Doe" }], templateId: "welcome-email", templateData: { name: "John", company: "ACME Corp" } )
  4. Send bulk emails:
    send-bulk-emails( recipients: [ { email: "user1@example.com", name: "User 1" }, { email: "user2@example.com", name: "User 2" } ], subject: "Important Announcement", body: "<p>This is an important announcement.</p>", batchSize: 10, delayBetweenBatches: 1000 )

Requirements

  • Node.js 14+
  • Nodemailer for email sending
  • Access to an SMTP server

License

MIT

Install Server
A
security – no known vulnerabilities
F
license - not found
A
quality - confirmed to work

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Enables sending emails via SMTP with template management, supporting multiple SMTP configurations, template creation with variable substitution, and bulk email sending with rate limiting.

  1. Features
    1. Installation
      1. Usage
        1. Starting the Server
        2. Configuration
        3. Available Tools
      2. Example Usage
        1. Requirements
          1. License

            Related MCP Servers

            • A
              security
              F
              license
              A
              quality
              Provides an interface to manage email marketing, contact lists, dynamic templates, and email analytics via SendGrid's API.
              Last updated -
              21
              15
              TypeScript
            • A
              security
              A
              license
              A
              quality
              Provides IMAP and SMTP capabilities, enabling developers to manage email services with seamless integration and automated workflows.
              Last updated -
              4
              62
              Python
              BSD 3-Clause
              • Apple
              • Linux
            • A
              security
              A
              license
              A
              quality
              An MCP server implementation that allows sending emails over MailPace's fast transactional email API.
              Last updated -
              1
              1
              TypeScript
              MIT License
            • A
              security
              A
              license
              A
              quality
              Manage your emails effortlessly with a standardized interface for drafting, sending, retrieving, and organizing messages. Streamline your email workflow with complete Gmail API coverage, including label and thread management.
              Last updated -
              65
              720
              21
              JavaScript
              MIT License
              • Apple
              • Linux

            View all related MCP servers

            MCP directory API

            We provide all the information about MCP servers via our MCP API.

            curl -X GET 'https://glama.ai/api/mcp/v1/servers/samihalawa/mcp-server-smtp'

            If you have feedback or need assistance with the MCP directory API, please join our Discord server