Labsco
Olib-AI logo

mailcue-mcp

β˜… 18

from Olib-AI

Give AI agents their own local mailbox to read, send, and triage email.

πŸ”₯πŸ”₯πŸ”₯βœ“ VerifiedFreeAdvanced setup
<p align="center"> <br /> <img src="logo.svg" alt="MailCue" width="320" /> <br /> <em>A realistic email testing server in a single Docker container.</em> <br /><br /> <a href="https://github.com/Olib-AI/mailcue/actions"><img src="https://img.shields.io/github/actions/workflow/status/Olib-AI/mailcue/ci.yml?branch=main&style=flat-square&label=CI" alt="CI" /></a> <a href="https://github.com/Olib-AI/mailcue/blob/main/LICENSE"><img src="https://img.shields.io/badge/license-MIT-blue?style=flat-square" alt="MIT License" /></a> <a href="https://github.com/Olib-AI/mailcue/pkgs/container/mailcue"><img src="https://img.shields.io/badge/GHCR-ghcr.io%2Folib--ai%2Fmailcue-blue?style=flat-square&logo=github" alt="GHCR" /></a> <a href="https://github.com/Olib-AI/mailcue/stargazers"><img src="https://img.shields.io/github/stars/Olib-AI/mailcue?style=flat-square" alt="GitHub Stars" /></a> <a href="https://github.com/Olib-AI/mailcue/releases"><img src="https://img.shields.io/github/v/release/Olib-AI/mailcue?style=flat-square" alt="Latest Release" /></a> <a href="https://www.olib.ai"><img src="https://img.shields.io/badge/by-Olib%20AI-6c47ff?style=flat-square" alt="Olib AI" /></a> <br /> <a href="https://github.com/Olib-AI/mailcue/blob/main/openapi.json"><img src="https://img.shields.io/badge/OpenAPI-3.1-6BA539?style=flat-square&logo=openapiinitiative" alt="OpenAPI Spec" /></a> <a href="https://github.com/Olib-AI/mailcue/blob/main/postman_collection.json"><img src="https://img.shields.io/badge/Postman-Collection-FF6C37?style=flat-square&logo=postman&logoColor=white" alt="Postman Collection" /></a> </p>

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

<p align="center"> <img src="examples/regular-email.png" alt="MailCue inbox showing a rich HTML invoice email" width="860" /> </p> <p align="center"> <img src="examples/gpg-encrypted-email.png" alt="MailCue displaying a PGP-encrypted email with credentials" width="860" /> </p> <p align="center"> <img src="examples/settings.png" alt="MailCue settings page with GPG keys, TLS certificate, mail server, and domain management tabs" width="860" /> </p>

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.
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.
Single containerOne docker run. No external database, Redis, or message queue. SQLite with optional AES-256 encryption.

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, 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.

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

<a href="https://star-history.com/#Olib-AI/mailcue&Date"> <picture> <source media="(prefers-color-scheme: dark)" srcset="https://api.star-history.com/svg?repos=Olib-AI/mailcue&type=Date&theme=dark" /> <source media="(prefers-color-scheme: light)" srcset="https://api.star-history.com/svg?repos=Olib-AI/mailcue&type=Date" /> <img alt="Star History Chart" src="https://api.star-history.com/svg?repos=Olib-AI/mailcue&type=Date" width="600" /> </picture> </a>

Links


<p align="center"> If you find MailCue useful, please consider giving it a <a href="https://github.com/Olib-AI/mailcue">star on GitHub</a>. It helps others discover the project. </p> <p align="center"> Built by <a href="https://www.olib.ai">Olib AI</a> </p>