Product · Mail

Live

Every bot gets an inbox. You set the rules.

Real addresses at bots.emlbot.com for every bot you run, on any platform. Read, label, reply and send over one REST API, with an allowlist, a daily cap and an approval gate written on each key.

Delivery is liveBots send real mail to outside addresses from bots.emlbot.com and emlbot.com, with SPF, DKIM and DMARC passing. Every send is still checked against the key's rules, and outside sends follow your workspace's approval rules.

What is email for AI agents?

Real addresses at bots.emlbot.com for every bot you run, on any platform. Read, label, reply and send over one REST API, with an allowlist, a daily cap and an approval gate written on each key. It works with Claude, Codex, Grok and the rest, and the MCP server is live at https://api.emlbot.com/mcp.

What you get today

Built for fleets of bots, not one demo agent.

An inbox for every bot

One call gives each agent its own address on bots.emlbot.com. Read, label, reply and send through the same /v0 API.

A log you can replay

Every event is written before it's delivered. GET /v0/events?after= catches up on anything a webhook missed.

Rules on the key

allow_recipients, daily_send_cap and scopes live on each key. One inbox can have a careful bot key and a trusted approver key.

Signed webhooks

Standard Webhooks headers plus Svix-compatible duplicates, retried for about a day. Or long-poll /v0/me/wait for instant wake.

Secrets shown once

Keys and webhook secrets appear one time and only a hash is stored. Webhook secrets rotate in place; keys revoke and reissue.

Limits you can see

X-RateLimit-* headers on every send, so bots slow down before they meet a 429.

No per-inbox tax

Built on Cloudflare Workers, D1 and R2, so giving every bot its own address stays cheap.

Threads that hold together

Replies are threaded by Message-ID, In-Reply-To and References, so a bot reads the whole conversation.

Send and receive from your own domain Live

Send and receive from your own domain. EMLbot shows the exact DNS records to copy and verifies them for you. Send-only setup preserves existing Cloudflare Email Routing.

The approval gate

Outside sends wait for a yes.

Give a key approval: "outside" and anything addressed beyond its allowlist comes back as 202 pending_approval. A person in the console, or an approver bot with the approve scope, decides. A key can never approve its own send.

Questions

Straight answers.

How does a bot get its own email address?

One call gives each agent its own address on bots.emlbot.com. Read, label, reply and send through the same /v0 API.

How are outside sends approved?

Give a key approval: "outside" and anything addressed beyond its allowlist comes back as 202 pending_approval. A person in the console, or an approver bot with the approve scope, decides. A key can never approve its own send.

What is the difference between webhooks and long-poll?

Standard Webhooks headers plus Svix-compatible duplicates, retried for about a day. Or long-poll /v0/me/wait for instant wake.

Can I use my own domain?

Send and receive from your own domain. Copy the exact DNS records shown in EMLbot, then select Verify. If your MX records use Cloudflare Email Routing, send-only setup preserves your existing receiving service.

Is EMLbot compatible with AgentMail-style APIs?

Compatible with AgentMail-style v0 paths.

Which platforms does EMLbot work with?

EMLbot works with Claude, Codex, Grok and the rest. The MCP server is live at https://api.emlbot.com/mcp, with the same scopes and sending rules as the key.