trackmcp
Back to directory

Realistic email testing server in a single Docker container. SMTP, IMAP, DKIM/DMARC, spam filtering, REST API, Node/Python SDKs, and an MCP server.

22 stars PythonOthers Updated Aug 20, 2026
ci-cddeveloper-toolsdevtoolsdkimdmarcdockerdovecotemailemail-serveremail-testingfastapiimapmail-serverpostfixreactself-hostedsmtpspamassassintestingwebhook

Documentation

A realistic email testing server in a single Docker container.


MailCue packages Postfix, Dovecot, OpenDKIM, OpenDMARC, SpamAssassin, a FastAPI REST API, and a React web UI into one Docker container managed by s6-overlay. It runs a full mail stack with IMAP/POP3 access, DKIM signing, DMARC verification, spam filtering, TLS, and GPG encryption, so you can test email the way it behaves in production. Set `MAILCUE_MODE=production` and the same container runs as a real mail server.

**Features · Quick start · Documentation · Contributing**

Features

CapabilityWhat it does
Catch-all SMTPAccepts mail for any address on any domain. Nothing leaves the container.
IMAP and POP3Read captured mail with any standard client over STARTTLS or implicit TLS.
Web UIReact app with a mailbox sidebar, folder navigation, an email viewer, and a compose dialog.
REST API and SDKsJSON API for sending, receiving, injecting, searching, and deleting email, with Python and Node SDKs.
Email injectionInsert messages straight into a mailbox over IMAP APPEND for deterministic test setup, with realistic headers.
Deliverability testingCreate a scoring mailbox with authentication, SpamAssassin, content, header, and transport diagnostics through the web UI, REST API, Node SDK, and MCP.
DKIM, DMARC, SPFOpenDKIM signing, OpenDMARC verification, and SPF policy checks, with Authentication-Results headers.
Spam filteringSpamAssassin scores inbound mail with a configurable threshold, Bayesian filtering, and RBL checks.
TLS everywhereAuto-generated certificates for SMTP STARTTLS, IMAPS, and POP3S. Upload your own from the UI.
GPG / PGP-MIMEPer-mailbox GPG keys. Sign, encrypt, verify, and decrypt mail (RFC 3156). Publish keys to keys.openpgp.org.
Real-time eventsA Server-Sent Events stream pushes email.received, email.deleted, mailbox.created, and more.
Scoped API keysX-API-Key auth with per-key scopes (read, send, delete, and more) and an optional mailbox allow-list.
MCP serverAn official Model Context Protocol server gives an AI agent its own mailbox.
Domain managementAdd custom domains with automatic DKIM and a DNS dashboard for MX, SPF, DKIM, DMARC, MTA-STS, and TLS-RPT.
Multi-userPer-user mailbox quotas and isolated mailboxes, emails, GPG keys, and API keys.
Production modeA hardened mail server with strict domains, required TLS, DMARC reject, and Let's Encrypt certificates.
Provider sandboxCapture outbound SMS, voice, and chat API traffic with wire-identical endpoints and signed webhooks.
Flexible databaseZero-config SQLite with optional AES-256 encryption, or external PostgreSQL for concurrent production workloads.

Quick start

Docker Compose

bash
git clone https://github.com/Olib-AI/mailcue.git
cd mailcue
docker compose up -d

Open http://localhost:8088 and log in with username `admin` and password `mailcue`.

Docker run

bash
docker run -d \
  --name mailcue \
  -p 8088:80 \
  -p 25:25 \
  -p 587:587 \
  -p 143:143 \
  -p 993:993 \
  -v mailcue-data:/var/mail/vhosts \
  -v mailcue-db:/var/lib/mailcue \
  -e MAILCUE_DOMAIN=mailcue.local \
  -e MAILCUE_ADMIN_PASSWORD=mailcue \
  ghcr.io/olib-ai/mailcue

Check it works

bash
curl http://localhost:8088/api/v1/health

Database choices

MailCue uses SQLite by default, which keeps local and small deployments simple.

Production installations with concurrent API, provider sandbox, HTTP-bin, or

email warmup traffic should use PostgreSQL. MailCue supports a managed

PostgreSQL database or a PostgreSQL container on the same private Docker

network. Connection pooling, production indexes, foreign keys, automatic schema

migrations, and an offline SQLite-to-PostgreSQL migration command are included.

See Production deployment

for Docker Compose examples and the migration procedure. See

Configuration for every

database environment variable.

Documentation

> 📖 Read the full, interactive guides on the **Official MailCue Documentation Website**.

GuideCovers
ArchitectureContainer layout, request flow, and tech stack.
ConfigurationEnvironment variables and exposed ports.
API referenceREST endpoints, authentication, and API key scopes.
Production deploymentHardened mode, PostgreSQL deployment and migration, DNS records, and TLS certificates.
Email clients and TLS trustIMAP/POP3/SMTP setup and trusting the CA.
Using in CI/CDPipeline setup and platform examples.
MCP serverGive an AI agent its own mailbox over MCP.
Provider sandbox and HTTP binCapture SMS, voice, and chat traffic, and inspect HTTP requests.
Sharing MailCue across projectsRun one container behind a shared Docker network.
Development and contributingLocal setup, linting, tests, and the PR process.

The API is also served as interactive Swagger UI at `/api/docs`, with machine-readable specs in openapi.json and postman_collection.json. See the deliverability testing guide for scoring, visual testing, placement, providers, schedules, and CI policies.

The SDKs and MCP server have their own docs: Python SDK, Node SDK, and MCP server.

Contributing

Contributions are welcome. See Development and contributing for local setup, linting, type checks, tests, and the pull request process.

License

MIT. See LICENSE.

Star History


If you find MailCue useful, please consider giving it a . It helps others discover the project.

Built by

Frequently asked questions

What is mailcue?

mailcue is Realistic email testing server in a single Docker container. SMTP, IMAP, DKIM/DMARC, spam filtering, REST API, Node/Python SDKs, and an MCP server.

How do I install mailcue?

Open the GitHub repository and follow its README. Most MCP servers are added to your client's MCP config, then called by your agent.

Is mailcue open source?

Yes — it is hosted on GitHub at https://github.com/Olib-AI/mailcue and has 22 stars.

Related MCP tools

Run your own MCP server? See who uses it and what to fix.

Measure it with TrackMCP