Provisional mailbox
A random address is created idempotently for the local client. It expires, cannot send, and gives the agent enough access to receive a verification email or inspect an inbox.
Create a receive-only temporary inbox for the first task, then promote the workflow to a permanent named mailbox only when a human approves the identity.
mails0 provides two mailbox lifecycles: a random 72-hour provisional mailbox that the official CLI or MCP server can create automatically, and a permanent mailbox that requires an explicit claim. Both use scoped credentials, so an agent does not need access to a personal Gmail or Outlook account.
Temporary first, permanent only after value
A random address is created idempotently for the local client. It expires, cannot send, and gives the agent enough access to receive a verification email or inspect an inbox.
A human chooses the name and approves the claim. The resulting mailbox-scoped key supports the capabilities allowed by the hosted or self-hosted deployment.
Teams can deploy the API under their own Cloudflare account and domain, then define retention, sender configuration, quotas, and operational controls themselves.
Mailbox creation is a security decision and a product-conversion decision. The lifecycle should match the uncertainty of the workflow.
A random address is created idempotently for the local client. It expires, cannot send, and gives the agent enough access to receive a verification email or inspect an inbox.
A human chooses the name and approves the claim. The resulting mailbox-scoped key supports the capabilities allowed by the hosted or self-hosted deployment.
Teams can deploy the API under their own Cloudflare account and domain, then define retention, sender configuration, quotas, and operational controls themselves.
Run mails bootstrap or call an MCP inbox tool. The client stores the scoped key locally instead of returning it to the model transcript.
Enter the address into the signup, notification, or verification flow that the agent is already operating.
Poll through the CLI, API, Python SDK, or MCP server. Filter for inbound mail or use the code-specific wait operation.
If the workflow produced value, claim a permanent name with human approval or deploy your own domain. Otherwise let the provisional mailbox expire.
npm install -g mails-agent
mails bootstrap
mails inbox --direction inbound --limit 1Human mailbox OAuth often exposes years of unrelated messages, contacts, password resets, and business correspondence. A dedicated agent mailbox starts empty and can be limited to one application, test suite, or automation role.
A mailbox-scoped credential also makes revocation understandable. Operators can pause one identity without disabling every agent or rotating a broad account-wide secret. Provisional credentials narrow the first-run risk further by removing outbound sending and enforcing expiry.
| Situation | Recommended mailbox | Reason |
|---|---|---|
| One signup or OTP task | Provisional hosted mailbox | Fastest bounded proof with automatic expiry and no sending. |
| Recurring coding-agent notifications | Permanent mailbox | Stable address and scoped identity for an ongoing tool. |
| CI run isolation | New provisional mailbox per test boundary | Prevents stale messages from contaminating assertions. |
| Production customer workflow | Self-hosted mailbox on your domain | You control domain, retention, quotas, and operations. |
| Access to an employee inbox | Use the provider API with explicit OAuth review | mails0 should not impersonate an existing human mailbox. |
Product behavior is verified against the mails0 source and documentation. External comparisons link to official vendor documentation checked on 2026-08-15.
Yes. The official CLI and MCP server can bootstrap a random provisional mailbox automatically. The hosted provisional mailbox is receive-only, expires after 72 hours, and is subject to abuse limits.
No. Permanent hosted claims require explicit human approval. This keeps durable identities and outbound capability behind a deliberate control while preserving automatic first-run discovery.
The CLI and MCP packages store the scoped key in local client state. The bootstrap response is designed so the key does not need to be exposed in a model conversation.
Yes. Self-host mails0 on Cloudflare and configure Email Routing and your outbound sender for a domain you control.
Start with a receive-only temporary mailbox. Move to a permanent identity or self-hosted deployment only after the workflow reaches a real email value event.