SMTP
io.github.ni-c/smtp-mcp
About SMTP
SMTP is an MCP server published by the GitHub account ni-c. MCP server that sends mail over SMTP, gated behind an allowlist and a human confirmation
It runs on your own machine: your AI client starts it from the npm package @ni-c/smtp-mcp at version 0.2.0.
It asks for one secret: SMTP_PASSWORD. Give it a key with the least access that still works.
It also needs SMTP_HOST, SMTP_USER and SMTP_FROM set before it starts.
Version 0.2.0 was published on 7 September 2026, and the source code is public, so you can read it before installing.
Written from the registry entry. 9 automated checks on the registry entry and the package code: 6 pass, 1 warn, 0 fail, 2 info. How we check.
What it asks for
| Variable | Required | Secret | Description |
|---|---|---|---|
SMTP_HOST | Yes | No | Hostname of the SMTP server, e.g. smtp.example.net. |
SMTP_PORT | No | No | Port. Defaults to 587 for starttls, 465 for implicit, 25 for none. |
SMTP_TLS | No | No | starttls (default), implicit or none. STARTTLS is required, never opportunistic. |
SMTP_USER | Yes | No | Username for SMTP authentication. |
SMTP_PASSWORD | Yes | Yes | Password or app-specific password for SMTP authentication. |
SMTP_FROM | Yes | No | The only sender this server will use, e.g. "Name <person@example.net>". There is no from parameter. |
SMTP_REPLY_TO | No | No | Reply-To header on every message, e.g. "Team <team@example.net>". Unset means no Reply-To header and replies go to SMTP_FROM. There is no reply_to parameter. |
SMTP_ALLOW_SEND | No | No | Set to "true" to register the sending tools. Defaults to false: the server cannot send until it is set. |
SMTP_ALLOWED_RECIPIENTS | No | No | Comma-separated addresses and @domains this server may write to. Required with SMTP_ALLOW_SEND=true; "*" allows any. |
SMTP_MAX_RECIPIENTS | No | No | Maximum distinct recipients across To, Cc and Bcc in one message. Default 10. |
SMTP_MAX_SENDS_PER_HOUR | No | No | Sliding hourly cap on messages sent. Default 20. |
SMTP_MAX_MESSAGE_BYTES | No | No | Maximum size of the composed message. Default 10485760. |
SMTP_MAX_ATTACHMENT_BYTES | No | No | Maximum size of a single attachment. Default 5242880. |
SMTP_ATTACHMENT_DIR | No | No | Directory attachments are read from. Unset means attachments are unavailable. |
SMTP_ATTACHMENT_TYPES | No | No | Comma-separated content types that may be attached. Defaults to a document and image allowlist. |
SMTP_SIGNATURE | No | No | Text appended below the standard signature delimiter of every message. |
SMTP_AUDIT_LOG | No | No | File the audit lines are appended to, in addition to stderr. |
SMTP_ALLOW_TOOLS | No | No | Comma-separated tool names, a prefix with one trailing *, or "essential" for the curated preset. |
SMTP_DENY_TOOLS | No | No | Comma-separated tool names or prefixes to remove, applied after SMTP_ALLOW_TOOLS. |
SMTP_INSECURE_TLS | No | No | Set to "true" to accept self-signed certificates. Prefer a proper internal CA. |
Checks
| Check | Result | Detail |
|---|---|---|
| Source repository linked | Pass | https://github.com/ni-c/smtp-mcp |
| Version pinned | Pass | Every package has an explicit version |
| Secrets requested | Info | Asks for 1 secret: SMTP_PASSWORD |
| Known package registry | Pass | All packages come from npm, PyPI, OCI, NuGet or MCPB |
| Namespace ownership | Info | Name verified via GitHub account ni-c |
| Registry text aimed at the AI | Pass | Description and settings contain no hidden characters or instructions to the AI |
| Install scripts | Pass | @ni-c/smtp-mcp@0.2.0 runs nothing at install |
| Code red flags | Pass | Read 46 files in @ni-c/smtp-mcp@0.2.0: no obfuscation, encoded execution, credential reads or data-collection endpoints found |
| Text aimed at the AI | Warn | Tells an AI reviewer the code is safe (dist/server.js: "…d then say what stands in * the way. A model that believes this server is harmless is a model that will * not stop to won…"). Read the context: a security tool may quote these on purpose. |
Popularity & health: 56 / 100
Worked out from public numbers and our own checks, not from user reviews or ratings. It says how used and how looked-after a server is, not whether it is safe.
0 forks, 46 merged pull requests. Sources: GitHub, npm, PyPI (pypistats.org) and Hacker News (Algolia), fetched 2026-10-31.
What people say
No Hacker News threads link to its source code.
Look further: search Reddit, search Hacker News, read its GitHub issues. These are not reviews we checked.
Facts
| Registry name | io.github.ni-c/smtp-mcp |
|---|---|
| Publisher | GitHub account ni-c |
| How the name is verified | Name verified via GitHub account ni-c. The registry ties the name prefix to that account or domain; it does not check the code. |
| Type | Local: runs on your machine from a package |
| Packages | npm @ni-c/smtp-mcp 0.2.0 (stdio)oci ghcr.io/ni-c/smtp-mcp:0.2.0 no version given (stdio) |
| Version | 0.2.0 |
| Published | |
| Last updated | |
| Source repository | https://github.com/ni-c/smtp-mcp |
| Website | https://smtp-mcp.ni-c.de |
| Category | Email & messaging (assigned by keyword rule, not by hand) |
Related servers in Email & messaging
- Envelope3/4Your own IMAP/SMTP mailboxes as agent tools, with per-agent policy…
- Sendermap7/7Maps every service that sends email as a domain, with the public…
- wa — safe WhatsApp automation5/6Safety-first WhatsApp tools: draft-gated sends, enforced rate…
- Command Mail3/3One inbox for all your addresses: your AI agent reads, sorts,…
- Mailbox4/4Scoped IMAP/SMTP access over HTTP and MCP: read, organize, draft,…
- Naver Mail (네이버 메일)8/8Read, search, reply to and organize Naver Mail with the same tools…