NestDaddy

SMTP

io.github.ni-c/smtp-mcp ยท v0.2.0

MCP server that sends mail over SMTP, gated behind an allowlist and a human confirmation

Connect Runs on your machine

Terminal
claude mcp add smtp-mcp -e SMTP_HOST=<SMTP_HOST> -e SMTP_PORT=<SMTP_PORT> -e SMTP_TLS=<SMTP_TLS> -e SMTP_USER=<SMTP_USER> -e SMTP_PASSWORD=<SMTP_PASSWORD> -e SMTP_FROM=<SMTP_FROM> -e SMTP_REPLY_TO=<SMTP_REPLY_TO> -e SMTP_ALLOW_SEND=<SMTP_ALLOW_SEND> -e SMTP_ALLOWED_RECIPIENTS=<SMTP_ALLOWED_RECIPIENTS> -e SMTP_MAX_RECIPIENTS=<SMTP_MAX_RECIPIENTS> -e SMTP_MAX_SENDS_PER_HOUR=<SMTP_MAX_SENDS_PER_HOUR> -e SMTP_MAX_MESSAGE_BYTES=<SMTP_MAX_MESSAGE_BYTES> -e SMTP_MAX_ATTACHMENT_BYTES=<SMTP_MAX_ATTACHMENT_BYTES> -e SMTP_ATTACHMENT_DIR=<SMTP_ATTACHMENT_DIR> -e SMTP_ATTACHMENT_TYPES=<SMTP_ATTACHMENT_TYPES> -e SMTP_SIGNATURE=<SMTP_SIGNATURE> -e SMTP_AUDIT_LOG=<SMTP_AUDIT_LOG> -e SMTP_ALLOW_TOOLS=<SMTP_ALLOW_TOOLS> -e SMTP_DENY_TOOLS=<SMTP_DENY_TOOLS> -e SMTP_INSECURE_TLS=<SMTP_INSECURE_TLS> -- npx -y @ni-c/[email protected]
claude_desktop_config.json
{
  "mcpServers": {
    "smtp-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@ni-c/[email protected]"
      ],
      "env": {
        "SMTP_HOST": "<SMTP_HOST>",
        "SMTP_PORT": "<SMTP_PORT>",
        "SMTP_TLS": "<SMTP_TLS>",
        "SMTP_USER": "<SMTP_USER>",
        "SMTP_PASSWORD": "<SMTP_PASSWORD>",
        "SMTP_FROM": "<SMTP_FROM>",
        "SMTP_REPLY_TO": "<SMTP_REPLY_TO>",
        "SMTP_ALLOW_SEND": "<SMTP_ALLOW_SEND>",
        "SMTP_ALLOWED_RECIPIENTS": "<SMTP_ALLOWED_RECIPIENTS>",
        "SMTP_MAX_RECIPIENTS": "<SMTP_MAX_RECIPIENTS>",
        "SMTP_MAX_SENDS_PER_HOUR": "<SMTP_MAX_SENDS_PER_HOUR>",
        "SMTP_MAX_MESSAGE_BYTES": "<SMTP_MAX_MESSAGE_BYTES>",
        "SMTP_MAX_ATTACHMENT_BYTES": "<SMTP_MAX_ATTACHMENT_BYTES>",
        "SMTP_ATTACHMENT_DIR": "<SMTP_ATTACHMENT_DIR>",
        "SMTP_ATTACHMENT_TYPES": "<SMTP_ATTACHMENT_TYPES>",
        "SMTP_SIGNATURE": "<SMTP_SIGNATURE>",
        "SMTP_AUDIT_LOG": "<SMTP_AUDIT_LOG>",
        "SMTP_ALLOW_TOOLS": "<SMTP_ALLOW_TOOLS>",
        "SMTP_DENY_TOOLS": "<SMTP_DENY_TOOLS>",
        "SMTP_INSECURE_TLS": "<SMTP_INSECURE_TLS>"
      }
    }
  }
}
~/.cursor/mcp.json
{
  "mcpServers": {
    "smtp-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@ni-c/[email protected]"
      ],
      "env": {
        "SMTP_HOST": "<SMTP_HOST>",
        "SMTP_PORT": "<SMTP_PORT>",
        "SMTP_TLS": "<SMTP_TLS>",
        "SMTP_USER": "<SMTP_USER>",
        "SMTP_PASSWORD": "<SMTP_PASSWORD>",
        "SMTP_FROM": "<SMTP_FROM>",
        "SMTP_REPLY_TO": "<SMTP_REPLY_TO>",
        "SMTP_ALLOW_SEND": "<SMTP_ALLOW_SEND>",
        "SMTP_ALLOWED_RECIPIENTS": "<SMTP_ALLOWED_RECIPIENTS>",
        "SMTP_MAX_RECIPIENTS": "<SMTP_MAX_RECIPIENTS>",
        "SMTP_MAX_SENDS_PER_HOUR": "<SMTP_MAX_SENDS_PER_HOUR>",
        "SMTP_MAX_MESSAGE_BYTES": "<SMTP_MAX_MESSAGE_BYTES>",
        "SMTP_MAX_ATTACHMENT_BYTES": "<SMTP_MAX_ATTACHMENT_BYTES>",
        "SMTP_ATTACHMENT_DIR": "<SMTP_ATTACHMENT_DIR>",
        "SMTP_ATTACHMENT_TYPES": "<SMTP_ATTACHMENT_TYPES>",
        "SMTP_SIGNATURE": "<SMTP_SIGNATURE>",
        "SMTP_AUDIT_LOG": "<SMTP_AUDIT_LOG>",
        "SMTP_ALLOW_TOOLS": "<SMTP_ALLOW_TOOLS>",
        "SMTP_DENY_TOOLS": "<SMTP_DENY_TOOLS>",
        "SMTP_INSECURE_TLS": "<SMTP_INSECURE_TLS>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "smtp-mcp": {
      "type": "stdio",
      "command": "npx",
      "args": [
        "-y",
        "@ni-c/[email protected]"
      ],
      "env": {
        "SMTP_HOST": "<SMTP_HOST>",
        "SMTP_PORT": "<SMTP_PORT>",
        "SMTP_TLS": "<SMTP_TLS>",
        "SMTP_USER": "<SMTP_USER>",
        "SMTP_PASSWORD": "<SMTP_PASSWORD>",
        "SMTP_FROM": "<SMTP_FROM>",
        "SMTP_REPLY_TO": "<SMTP_REPLY_TO>",
        "SMTP_ALLOW_SEND": "<SMTP_ALLOW_SEND>",
        "SMTP_ALLOWED_RECIPIENTS": "<SMTP_ALLOWED_RECIPIENTS>",
        "SMTP_MAX_RECIPIENTS": "<SMTP_MAX_RECIPIENTS>",
        "SMTP_MAX_SENDS_PER_HOUR": "<SMTP_MAX_SENDS_PER_HOUR>",
        "SMTP_MAX_MESSAGE_BYTES": "<SMTP_MAX_MESSAGE_BYTES>",
        "SMTP_MAX_ATTACHMENT_BYTES": "<SMTP_MAX_ATTACHMENT_BYTES>",
        "SMTP_ATTACHMENT_DIR": "<SMTP_ATTACHMENT_DIR>",
        "SMTP_ATTACHMENT_TYPES": "<SMTP_ATTACHMENT_TYPES>",
        "SMTP_SIGNATURE": "<SMTP_SIGNATURE>",
        "SMTP_AUDIT_LOG": "<SMTP_AUDIT_LOG>",
        "SMTP_ALLOW_TOOLS": "<SMTP_ALLOW_TOOLS>",
        "SMTP_DENY_TOOLS": "<SMTP_DENY_TOOLS>",
        "SMTP_INSECURE_TLS": "<SMTP_INSECURE_TLS>"
      }
    }
  }
}

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools

This server runs locally, so its tools are listed by your MCP client once it starts.

Environment variables

NameDescription
SMTP_HOST
Required
Hostname of the SMTP server, e.g. smtp.example.net.
SMTP_PORT
Optional
Port. Defaults to 587 for starttls, 465 for implicit, 25 for none.
SMTP_TLS
Optional
starttls (default), implicit or none. STARTTLS is required, never opportunistic.
SMTP_USER
Required
Username for SMTP authentication.
SMTP_PASSWORD
Required, secret
Password or app-specific password for SMTP authentication.
SMTP_FROM
Required
The only sender this server will use, e.g. "Name <[email protected]>". There is no from parameter.
SMTP_REPLY_TO
Optional
Reply-To header on every message, e.g. "Team <[email protected]>". Unset means no Reply-To header and replies go to SMTP_FROM. There is no reply_to parameter.
SMTP_ALLOW_SEND
Optional
Set to "true" to register the sending tools. Defaults to false: the server cannot send until it is set.
SMTP_ALLOWED_RECIPIENTS
Optional
Comma-separated addresses and @domains this server may write to. Required with SMTP_ALLOW_SEND=true; "*" allows any.
SMTP_MAX_RECIPIENTS
Optional
Maximum distinct recipients across To, Cc and Bcc in one message. Default 10.
SMTP_MAX_SENDS_PER_HOUR
Optional
Sliding hourly cap on messages sent. Default 20.
SMTP_MAX_MESSAGE_BYTES
Optional
Maximum size of the composed message. Default 10485760.
SMTP_MAX_ATTACHMENT_BYTES
Optional
Maximum size of a single attachment. Default 5242880.
SMTP_ATTACHMENT_DIR
Optional
Directory attachments are read from. Unset means attachments are unavailable.
SMTP_ATTACHMENT_TYPES
Optional
Comma-separated content types that may be attached. Defaults to a document and image allowlist.
SMTP_SIGNATURE
Optional
Text appended below the standard signature delimiter of every message.
SMTP_AUDIT_LOG
Optional
File the audit lines are appended to, in addition to stderr.
SMTP_ALLOW_TOOLS
Optional
Comma-separated tool names, a prefix with one trailing *, or "essential" for the curated preset.
SMTP_DENY_TOOLS
Optional
Comma-separated tool names or prefixes to remove, applied after SMTP_ALLOW_TOOLS.
SMTP_INSECURE_TLS
Optional
Set to "true" to accept self-signed certificates. Prefer a proper internal CA.

Details

Package@ni-c/[email protected] (NPM, stdio)
Packageghcr.io/ni-c/smtp-mcp:0.2.0 (OCI, stdio)
First published7 Sep 2026
Last updated7 Sep 2026
Registry nameio.github.ni-c/smtp-mcp

More other servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.