Agent tools · Checked 12 August 2026

Mailroom: Give projects and agents a private inbox

Read, search, and draft project email without handing an agent Gmail.

Mailroom is self-hosted email infrastructure that gives projects separate addresses and exposes bounded read, search, draft, approval, and send operations to agents.

Type
cli
Works on
Cloudflare Workers, Gmail, Terminal, MCP

Open Mailroom ↗︎

Project email without full Gmail access

Mailroom receives project email through Cloudflare and exposes small operations for agents to list, read, search, triage, and draft messages. Each project can have its own address while one Gmail account remains the optional human inbox.

The important boundary is between drafting and sending. Creating a draft, approving it, and delivering it are separate operations. The shipped automation is disabled, outbound attempts require idempotency keys, and generated prices and links can be checked against configured offers before a reply leaves.

Swipe’s live installation currently handles three domains, three inboxes, and five routes. Agents can read and prepare drafts through the CLI or MCP server, while automatic sending remains off. That makes it a real agent-email workflow, not a demo inbox or a generic Gmail wrapper.

Start with one exact address

Mailroom is infrastructure, not a hosted app. Deploy it into a Cloudflare account, connect one non-critical domain, and create one exact address before considering catch-all routes. Test an inbound message, a reply, the stored thread, and the final From address before moving important mail.

The MCP server exposes three progressive tools: list operations, describe one operation, and run it. Full bodies and thread content are opt-in rather than automatically placed in the agent context. The packaged skill also tells agents to treat messages and attachments as untrusted input and to request explicit approval before sending.

Storage, privacy, and setup cost

Original MIME and attachments live in R2. D1 stores routes, messages, threads, drafts, approvals, and delivery history. AI Search stores bounded search documents, with D1 full-text search as a fallback. Workers AI receives message content only when an operator explicitly runs an automation; the default automation is off. Mailroom collects no telemetry because there is no hosted Mailroom service.

This control comes with real setup work. You need Cloudflare DNS, Workers, D1, R2, Queues, Email Routing, and possibly the paid Workers plan for arbitrary outbound recipients. Cloudflare Email Sending is still beta. The npm package is also waiting for the first tagged release, so the current installation path is from source.

Mailroom has no web inbox. That is deliberate, but it means Gmail or the CLI is still needed for normal human reading. Self-hosters are responsible for access, retention, deletion, backups, and the legal obligations around stored email.

Featured in Swipe

Sources

Swipe the best AI skills, prompts, and workflows.

The newsletter to learn AI by stealing the cool ideas, skills, and tools you didn't know you needed.

One more step.

Check your inbox to confirm your subscription. Can't find it? Check your spam or junk folder.