Postmark Delivers Email. MultiMail Proves Who Sent It.

MultiMail matches the deliverability you expect from a transactional email service. Only MultiMail adds ECDSA-signed agent identity, graduated oversight, and pre-send domain intelligence.


Why this matters

Postmark is a well-engineered transactional email service built for human-operated applications. It has excellent deliverability, reliable webhooks, and clear bounce handling. What it does not have is any concept of agent identity. When an AI agent sends email through Postmark, the receiving server sees a standard SMTP message. There is no way to verify that an AI sent it, no mechanism for a human to review outbound messages before delivery, and no pre-send intelligence about whether the recipient domain is likely to bounce. Bounce data arrives after delivery — post-hoc, not preventative. For AI agent email, post-hoc is not good enough. EU AI Act Article 50 requires disclosure that content was AI-generated. GDPR applies to any personal data in outbound messages. And operationally, a misconfigured agent that spams a customer list does damage before you ever see the bounce webhook.


How MultiMail solves this

MultiMail runs on a high-deliverability delivery backbone with DKIM/SPF alignment — so your transactional and outreach mail lands as reliably as you expect. On top of that, MultiMail adds the layer that AI-sent email requires: an ECDSA-signed X-MultiMail-Identity claim that proves which agent sent each message, five graduated oversight modes so humans can approve sends before they happen, pre-send domain intelligence that blocks risky recipients before SMTP handoff, and an X-AI-Generated disclosure on every agent-originated message out of the box. Migrating from Postmark is straightforward: replace your Postmark API calls with MultiMail's send route (POST /v1/mailboxes/{mailbox_id}/send), set your oversight mode, and configure a mailbox. Your deliverability stays the same. Your accountability improves.

1

Create a mailbox and set oversight mode

Create a mailbox via the MultiMail API or dashboard using create_mailbox. Set oversight_mode to gated_send — the default for AI agents. In this mode, the agent can read and compose freely; outbound sends are held for human approval before delivery begins.

2

Agent calls send_email — MultiMail runs pre-send checks

When the agent calls send_email, MultiMail runs domain intelligence checks against the recipient domain before queuing. If the domain has high bounce risk or is flagged as disposable, the send is blocked with a structured error — not a bounce webhook 30 seconds after delivery.

3

Human reviews pending sends via list_pending

Pending sends appear in the approval queue. Call list_pending to retrieve them, or receive them via the approval webhook. The reviewer calls decide_email with approve or reject. Approved messages are handed to the delivery backend with identity headers attached.

4

Identity and compliance headers are attached on delivery

Every outbound message carries X-MultiMail-Identity (an ECDSA P-256 signed claim covering the oversight mode, capabilities, AI-generated flag, and operator plus mailbox identity) and X-AI-Generated: true (the EU AI Act Article 50 disclosure, gateway-enforced and locked on). Recipients and compliance tools can verify the sending agent without trusting the From address.

5

Inbound replies route back to the agent's inbox

Replies route to the sending mailbox. The agent calls check_inbox and read_email to retrieve them, maintaining full thread context via get_thread. The same oversight mode governs any replies the agent composes in response.


Try it with your agent

Pick your platform, copy the prompt, and paste it to your AI agent — it sets up MultiMail and builds the whole flow. Nothing to fill in.

1. Get MultiMail ready: read https://multimail.dev/llms.txt, connect the MCP server, create a free inbox, and set up a verified sender. 2. In Stripe, create webhook subscriptions for invoice.payment_failed, customer.subscription.trial_will_end, checkout.session.completed, and charge.dispute.created, then use the Stripe API to retrieve the related Customer, Invoice, Subscription, or Checkout Session. 3. For each event, draft the correct customer email: payment recovery with invoice context, trial-ending reminder with plan details, purchase follow-up after checkout, or dispute-response request with the transaction facts. 4. Personalize each message with the customer name, product or plan, amount, deadline, and next action, then schedule follow-ups only when Stripe still shows the issue is unresolved. 5. Send through MultiMail in gated_send mode; ask me only for Stripe credentials, sending domain access, and brand voice approval before going live.

What you get

High-deliverability backbone, more accountability

MultiMail sends over a high-deliverability backbone with DKIM/SPF alignment, so your SPF, DKIM, and DMARC reputation carries over. You do not trade deliverability for compliance — you get both from the same send path.

Pre-send domain intelligence instead of post-hoc bounces

Postmark tells you a message bounced after the SMTP handoff. MultiMail checks recipient domain reputation, MX health, and disposable-address signals before queuing the send. Risky recipients are flagged before they damage your sender score.

ECDSA-signed agent identity on every message

Every message carries an X-MultiMail-Identity header: an ECDSA P-256 signed claim over the oversight mode, capabilities, AI-generated flag, and operator plus mailbox identity. Downstream systems can verify which agent sent a message without relying on the spoofable From address.

EU AI Act Article 50 compliance without per-agent instrumentation

Every agent-originated message carries an X-AI-Generated: true header plus a human-readable disclosure footer. Compliance is gateway-enforced per mailbox — the ai_disclosure setting is locked on and cannot be disabled — so you do not need to update each agent when regulations change.

Graduated oversight that scales with agent trust

Start with gated_send: agents compose freely, humans approve outbound. As trust builds, switch individual mailboxes to monitored or autonomous. Different agents can operate at different trust levels simultaneously without any code changes.


Recommended oversight mode

Recommended
gated_send
Agents replacing or augmenting Postmark workflows are typically sending transactional or outreach email at volume. gated_send lets the agent compose and process inbound replies autonomously — preserving the speed advantage of automation — while requiring human approval before any outbound message is delivered. This catches misconfigured prompts, unexpected recipient lists, or tone problems before they reach customers. As your agent's behavior stabilizes and you build confidence in its outputs, you can migrate individual mailboxes to monitored or autonomous without changing any agent code.

Common questions

Will my deliverability hold up if I move off Postmark?
Yes. MultiMail sends over a high-deliverability backbone with DKIM/SPF alignment and warmed sending infrastructure, so your messages land at the rates you expect. The MultiMail layer sits above delivery: it handles identity signing, oversight queuing, domain intelligence, and compliance headers before the message is handed off for delivery.
How do I migrate from Postmark without rewriting my agent?
Replace your Postmark API calls with MultiMail's send route, POST /v1/mailboxes/{mailbox_id}/send. The body is { to, subject, markdown }: the sender is the mailbox in the path (no from field), and the body is a single markdown field rather than separate text/html. Identity is signed on automatically, so there is no agent_id to add. Point your inbound webhook URL to MultiMail if you handle replies. The main behavior change is that sends may enter an approval queue depending on the mailbox's oversight_mode — set the mailbox to autonomous initially if you want behavior closest to Postmark while you evaluate the platform.
What happens to my Postmark sender signatures and DKIM setup?
You have two options. Add your existing sending domain to MultiMail directly — MultiMail provisions its own DKIM keys alongside your existing Postmark setup. Or use a subdomain, such as agent.yourdomain.com, for agent-sent mail specifically. The subdomain approach is often preferable for EU AI Act compliance since it makes AI-originated mail distinguishable at the domain level to spam filters and recipients alike.
Does MultiMail support Postmark's message streams concept?
MultiMail uses mailboxes rather than message streams. Each mailbox has its own oversight mode, sending identity, and inbox. You can create separate mailboxes for transactional, outreach, and notification traffic using the create_mailbox endpoint — the functional equivalent of separating message streams, with the added benefit that each stream carries its own agent identity.
What is EU AI Act Article 50 and why does it apply to email?
EU AI Act Article 50 requires that AI systems disclose when content has been AI-generated, particularly in contexts where recipients might reasonably assume human authorship. Email from AI agents falls into this category. MultiMail satisfies this requirement by attaching an X-AI-Generated: true header plus a human-readable disclosure footer to every agent-originated message. This is gateway-enforced per mailbox — the ai_disclosure setting is locked on — and applies to any sender operating in or sending to recipients in the EU.
Can I keep using Postmark for human-sent email and only route agent email through MultiMail?
Yes. This is a common setup. Your human-operated application continues using Postmark directly. Your AI agents use MultiMail. The two systems are independent. Using separate sending domains or subdomains keeps the streams distinct, which also helps with deliverability monitoring, spam filter classification, and EU AI Act compliance reporting.

Explore more use cases

The only agent email with a verifiable sender

Email infrastructure built for AI agents. Verifiable identity, graduated oversight, and a hosted MCP server. Formally verified in Lean 4.