Email for agents
Real inboxes for your AI agents.
Give each agent its own address. It receives mail, reads it in threads, searches it and replies, from the API, from MCP or from here.
How it works
From address to answer in three steps.
- 01
Create an inbox
Pick an address on mailbox.maila.ai. Mail sent to it is scanned for spam and viruses, then stored.
- 02
Read in threads
Replies land in their conversation by their headers, so every inbox reads as threads, not a pile of mail.
- 03
Answer
Send and reply from the dashboard, the API or your assistant, or let the inbox agent sort and reply for you.
Features
Everything an inbox needs, built for code.
Inboxes on demand
As many addresses as your agents need, each with its own threads, labels and archive.
Search by meaning
Find mail by what it is about, not only by the words it uses, across every inbox you own.
An agent per inbox
Turn on the inbox agent to classify incoming mail, or to draft and send replies within your limits.
Block list built in
Bounces and complaints block an address automatically, and you can add your own. Blocked mail never sends.
Forward to you
Copy an inbox's mail to up to five addresses, each verified with a code. Forwards don't count toward your send limit.
REST API
Create an API key and work with inboxes, threads, messages and search from your own code.
Fully in the cloud
Serverless on AWS. Nothing to install, host or patch, and inboxes scale with your agents.
MCP for assistants
Connect ChatGPT or Claude over MCP with OAuth sign-in. The same inboxes, as tools.
Limits you can see
See this month's sends against your limit. Failed sends are refunded, and replies never send twice.
Security
Email security, designed differently.
Classic email dates from the 1980s, built for a network where everyone trusted everyone. You read mail by logging in over IMAP or POP3, you send by logging in over SMTP, and servers were once run over Telnet. Those logins began as plain-text passwords. Patches like STARTTLS and app passwords helped, but the ports still sit open to the internet, inviting password guessing and credential stuffing.
Maila Email offers none of them. No email password to steal: every read and every send is an authenticated HTTPS request.
- Access
- Legacy email service: IMAP, POP3 and SMTP logins with an email password
- Maila Email: HTTPS only, with a hashed API key, OAuth 2.1 or your sign-in
- Exposure
- Legacy email service: Email ports open to the internet for password guessing
- Maila Email: No email server to log in to, so nothing to guess
- Servers
- Legacy email service: Mail servers to harden, patch and keep patched
- Maila Email: Serverless on AWS: no machines of ours to patch
- Incoming mail
- Legacy email service: Filtering bolted on, often after delivery
- Maila Email: Scanned for spam and viruses before it is stored
- Forged senders
- Legacy email service: A spoofed From line looks like any other
- Maila Email: SPF, DKIM and DMARC checked on every message; forgeries flagged
- Storage
- Legacy email service: Depends on the host
- Maila Email: Encrypted at rest; raw messages deleted after 14 days
Isolated by account
Every record is keyed to your account, taken only from your verified sign-in, never from the request.
Content stays out of logs
Logs record ids only, never addresses, subjects or message bodies.
Our domain can't be spoofed
mailbox.maila.ai signs mail with DKIM and publishes DMARC p=reject, so forged mail from it is refused.
Made for developers
An inbox is one API call away.
Create an API key, then create inboxes, read threads, search, send and reply with plain JSON over HTTPS. Everything the dashboard does, your code can do.
- Idempotency-Key on sends, so a retry never mails twice
- Cursor pagination and one error shape everywhere
- Sender checks and spam verdicts on every message
curl https://api.maila.ai/v1/inboxes \ -H "Authorization: Bearer $MAILA_API_KEY" \ -H "Content-Type: application/json" \ -d '{"local_part": "support", "display_name": "Support"}'# {"object": "inbox", "id": "inb_mvdlh9c06724trm1",# "address": "support@mailbox.maila.ai", ...}curl https://api.maila.ai/v1/inboxes/inb_mvdlh9c06724trm1/messages \ -H "Authorization: Bearer $MAILA_API_KEY" \ -H "Idempotency-Key: welcome-42" \ -H "Content-Type: application/json" \ -d '{"to": ["ada@example.com"], "subject": "Welcome", "text": "Thanks for signing up."}'- POST/v1/inboxes
- GET/v1/inboxes/{id}/threads
- POST/v1/inboxes/{id}/messages
- POST/v1/inboxes/{id}/threads/{id}/reply
- POST/v1/search
- GET/v1/usage
In your assistant
Email from ChatGPT or Claude.
Connect once, then ask in your own words. Your assistant lists inboxes, reads and searches threads, and sends or replies once you confirm. Same account, same inboxes, same limits.
MCP server address
https://box.maila.ai/mcp- 01Copy the addressOne URL for every MCP client.
- 02Add a custom connectorPaste it in ChatGPT or Claude, under connectors.
- 03Sign inApprove with your Maila account. No API key to paste.
Your agents deserve an address.
Create an inbox, then work with it from here, the REST API or your assistant.
Create an inbox