smtp server with email interception and storage
Implements a full SMTP server that intercepts outbound emails from applications without requiring code changes. Emails are parsed, stored in-memory or persistent storage, and indexed for retrieval. Uses zero external dependencies for the SMTP protocol implementation, enabling lightweight deployment in development and testing environments.
Unique: Zero-dependency SMTP implementation (no external mail libraries) combined with in-process storage eliminates deployment complexity compared to Docker-based alternatives like MailHog or Mailtrap
vs alternatives: Faster startup and lower resource overhead than containerized email testing tools because it runs as a single binary with no external dependencies
web ui for email inspection and debugging
Provides a browser-based dashboard for viewing intercepted emails with full MIME parsing, attachment preview, and raw message inspection. Built with embedded web server that serves HTML/CSS/JavaScript frontend without external web framework dependencies. Supports real-time email list updates and detailed message inspection with syntax highlighting for headers and body content.
Unique: Embedded web server with zero external framework dependencies (no Node.js, no Python Flask required) — entire UI is self-contained in the binary, reducing deployment footprint
vs alternatives: Simpler setup than Mailpit's web UI because MailSandbox is a direct fork optimized for MCP integration without additional service dependencies
postmark api emulation for email sending
Implements Postmark-compatible REST API endpoints that accept email submission requests in Postmark format and route them to the internal SMTP server. Allows applications using Postmark SDK to send emails to MailSandbox without code changes. Supports Postmark request/response schemas including template variables, metadata, and delivery tracking.
Unique: Postmark API compatibility layer allows drop-in replacement for Postmark endpoint without modifying application code — applications using official Postmark SDKs can switch to MailSandbox by changing one configuration value
vs alternatives: More complete Postmark emulation than generic mock servers because it understands Postmark-specific request/response schemas and integrates with the same SMTP backend as direct SMTP testing
mcp server for ai-assisted email debugging
Exposes MailSandbox functionality as an MCP (Model Context Protocol) server, allowing AI agents and LLM-powered tools to query, search, and analyze intercepted emails programmatically. Implements MCP resource and tool endpoints for listing emails, retrieving message content, searching by recipient/subject, and analyzing email structure. Enables Claude and other AI models to understand email testing state and assist with debugging email workflows.
Unique: First email testing tool to expose debugging capabilities via MCP protocol, enabling AI agents to understand and reason about email system behavior — bridges gap between email infrastructure and AI-powered development workflows
vs alternatives: Unique positioning as MCP-first email testing tool compared to traditional email testing tools (Mailpit, MailHog) which only expose HTTP APIs unsuitable for LLM integration
email search and filtering with metadata indexing
Indexes intercepted emails by sender, recipient, subject, timestamp, and custom metadata tags. Provides search API endpoints that support filtering by multiple criteria (e.g., 'emails from user@example.com sent after 2024-01-01'). Uses in-memory indexing for fast queries without external search infrastructure. Supports regex and substring matching on email content.
Unique: Zero-dependency in-memory indexing approach avoids external search infrastructure while supporting complex multi-field queries — trades off scalability for simplicity and fast startup
vs alternatives: Simpler query interface than Mailpit because MailSandbox optimizes for programmatic search via API rather than UI-driven filtering, making it better suited for test automation
email attachment extraction and preview
Automatically extracts and stores MIME attachments from intercepted emails with support for multiple content types (images, PDFs, text, binary). Provides endpoints to list attachments for a given email, download raw attachment files, and generate previews for supported formats. Uses MIME parsing to identify attachment boundaries and content-type headers without external libraries.
Unique: Zero-dependency MIME parsing for attachment extraction — no external libraries like python-email or node-mailparser required, reducing binary size and startup time
vs alternatives: More efficient attachment handling than Mailpit because MailSandbox uses native MIME parsing optimized for testing workflows rather than general-purpose email processing
email delivery simulation and status tracking
Tracks email state through a simulated delivery pipeline (received, processing, delivered, failed) with configurable delays and failure injection. Allows tests to simulate delivery failures, bounces, and delays without modifying application code. Provides API to query delivery status and simulate webhook callbacks for delivery events.
Unique: Integrated delivery simulation without requiring separate mock services — allows testing email error paths in isolation by injecting failures at the MailSandbox level rather than mocking application-level email clients
vs alternatives: More integrated testing experience than mocking email libraries because MailSandbox simulates failures at the protocol level, testing actual application error handling paths
persistent email storage with multiple backend options
Supports multiple storage backends (in-memory, SQLite, PostgreSQL) for persisting intercepted emails across restarts. Uses pluggable storage interface to abstract backend implementation. Enables long-running test environments and historical email analysis without data loss. Automatically handles schema creation and migrations.
Unique: Pluggable storage backend architecture allows switching between in-memory, SQLite, and PostgreSQL without code changes — enables development with in-memory storage and production-like testing with persistent databases
vs alternatives: More flexible storage options than Mailpit (which uses SQLite only) because MailSandbox supports multiple backends, allowing teams to choose persistence strategy matching their infrastructure
+2 more capabilities