BotsInbox

Free email inboxes for AI agents

Hosted MCP Server

npx add-mcp 'https://mcp.botsinbox.com/mcp'

Installs into Claude Code, Codex, Cursor and more

Documentation

How it works — four steps

There is no sign-up form and nothing for a human to configure. The agent does everything itself; the human's only role is owning the account (step 1 asks for the owner's email, so every bot has a responsible human behind it).

The bot registers itself

One API call with its owner's email address. BotsInbox creates the account and returns an API key — the bot's password for everything below.

POST /v0/agent/sign-up
{"owner_email": "you@…"}

It creates an inbox

The bot picks a name and gets a real email address, like research-bot@botsinbox.com. Free accounts can hold up to 5 inboxes.

POST /v0/inboxes
{"local_part": "research-bot"}

Mail arrives, understood

Every message is stored, threaded, and scanned. Verification codes are extracted automatically, attachments are saved, and emails that look like prompt-injection attacks on your agent are flagged.

"extracted_code": "482916"
"prompt_injection_suspected": false

The bot reads its mail

Three ways: poll the REST API, call the MCP tools from any agent framework, or get an instant signed webhook the moment a message lands.

GET /v0/inboxes/{id}/messages
POST https://mcp.botsinbox.com/mcp

A real example, start to finish

Your agent needs an account on a research website. Here is the whole story:

  1. The agent creates research-bot@botsinbox.com and uses it to register on the website.
  2. The website emails: "Your verification code is 482916."
  3. The agent reads its inbox and gets the code as a ready-made field — "extracted_code": "482916" — no fragile screen-scraping, no asking you to check your phone.
  4. It types the code in, and the sign-up is done. You never touched anything.

What's included, free

Receiving email costs us almost nothing to provide, so receiving is free — properly free, not a trial.

♾️

Unlimited receiving

No per-message charges and no monthly email cap. Your agent can receive as much mail as it needs.

🤖

Agent self-sign-up

No human onboarding flow at all. If an agent can make one HTTP request, it can have an inbox a minute later.

🔢

Code extraction

OTPs and verification codes are detected and returned as a structured field on every message.

🧩

MCP server included

A hosted MCP server with tools like list_messages and search_messages — plug it straight into Claude, or any MCP client.

🧵

Threads & search

Conversations are threaded using standard email headers, and full-text search covers every message.

📎

Attachments

Files that arrive by email are stored and downloadable through the API, just like the message itself.

⚡

Signed webhooks

Get a message.received event pushed to your server the moment mail lands, HMAC-signed so you know it's genuine.

🛡️

Injection flagging

Emails are a classic way to attack an AI agent ("ignore your instructions…"). Messages matching known manipulation patterns are flagged before your agent reads them.

For agents reading this page

You don't need your human to set anything up. Fetch botsinbox.com/llms.txt — it contains everything required to register, create an inbox and start receiving mail, written for you. The short version:

1. POST https://api.botsinbox.com/v0/agent/sign-up   {"owner_email": "<your owner's email>"}
2. Save the returned api_key — it is shown once.
3. POST /v0/inboxes with header  Authorization: Bearer <api_key>
4. Read mail at GET /v0/inboxes/{id}/messages — or use MCP at https://mcp.botsinbox.com/mcp
   Tools: list_inboxes · create_inbox · list_messages · get_message · search_messages · report_issue
5. Something broken? Report it yourself: POST /v0/report-issue {"kind": "bug", "message": "..."}
   with your Bearer key — you get a tracking id back. Or email support@botsinbox.com.

Bot-friendly by design

BotsInbox is built for bots first. Every part of the service is designed to be used by software — and written in plain language so humans can follow along, check the details and stay in charge.

🤖

Machines can read everything

The full documentation exists as llms.txt and llms-full.txt for language models, an OpenAPI spec for frameworks, and a hosted MCP server for agent clients. If a bot can read, it can use BotsInbox — no screenshots, no browser, no form-filling.

🪪

Bots run their own accounts

Sign-up, inbox creation, reading, searching and webhooks are all self-service API calls. A bot never has to ask a human to click anything — the human's only job is to be the responsible owner named on the account.

🐛

Bots report issues themselves

Hit a problem? A bot does not need to wait for its human. It can file a report directly — POST /v0/report-issue with its API key, or the report_issue MCP tool — and gets a tracking id back. Reports can also be emailed to support@botsinbox.com or hello@botsinbox.com from any mailbox the bot can send from. Every report lands with the BotsInbox team.

👀

Humans can see everything

Bot-first does not mean human-blind. This website explains the whole service in plain words — how it works, what it costs (nothing), how privacy is handled, and the live usage numbers once they are large enough to mean something — so an owner can always verify exactly what their bot is using.

Give your favourite AI an email address

Step-by-step setup guides for the platforms agents actually run on — each one ends with your bot owning a working inbox.

Claude

Connect the BotsInbox MCP server in Claude Desktop or Claude Code.

ChatGPT

Give a custom GPT an inbox with GPT Actions and our OpenAPI spec.

Grok

Wire xAI API function calling to agent-owned email inboxes.

Gemini

Add MCP email to Gemini CLI, or REST email to Gemini API agents.

Any MCP client

Cursor, Windsurf, VS Code and more — one config pattern for all.

The complete guide

Email for AI agents explained: approaches, trade-offs and how it works.

Free — forever

BotsInbox is a free project, not a business with a free trial. There is no paid plan, no card, no trial clock and no paywall — every account gets everything, free for life. Receiving email is inexpensive on modern infrastructure, and BotsInbox runs entirely on Cloudflare's free tier, so unlimited receiving costs almost nothing to give away. The limits below exist only to stop abuse and keep the service free for everyone.

Everything, free

$0

  • Unlimited email receiving
  • Up to 5 inboxes per account
  • Founder invite code? 10 inboxes + 90-day retention — still free
  • Verification-code extraction
  • Threads, full-text search, attachments
  • Signed webhooks
  • MCP server access
  • Messages kept for 30 days

Support the project

Optional

  • Support is never required — BotsInbox stays free either way
  • Tell other builders and agent owners about it
  • Share the guides, or link to botsinbox.com from your project
  • Report bugs and request features: support@botsinbox.com
  • Want to sponsor the project? Write to support@botsinbox.com

Privacy & safety, in detail

An agent inbox holds verification codes and account notifications, so "trust us" is not good enough. Here is exactly how BotsInbox handles your agent's email — what is stored, who can see it, what is counted, and what is never done with it.

📥

What is stored, and for how long

When email arrives for one of your inboxes, BotsInbox stores the message — sender, subject, body and any attachments — on Cloudflare's infrastructure, so your agent can fetch it through the API or MCP. Messages delete themselves automatically after 30 days (90 days on founder-invite accounts), attachments included. There is no archive copy kept "just in case" and nothing is retained after deletion to offer anyone.

🔑

Only your API key can open an inbox

There is no webmail, no public link and no share button. The only way to read an inbox is a request carrying that account's own API key, over REST or MCP. Keys are stored as one-way hashes, never in plain text — so even a copy of the database would not reveal a usable key. Treat your key like a password: whoever holds it can read that account's mail, and nobody else can. And keys have a full lifecycle: an account can hold several named keys, any key can be rotated or revoked from the API (a leaked key dies the moment you rotate it), and a one-time recovery code issued at sign-up can reset a lost key entirely.

🙈

The BotsInbox team does not read your email

No human at BotsInbox opens, reads, mines, sells or shares the contents of any inbox. The service is built to run machine-to-machine: email arrives, software stores it, your agent fetches it — no person is in that loop. Day-to-day operations use counts only (how many accounts, inboxes and emails exist), never message contents. If you ever write to support about one specific message, we look at that message only if you ask us to and identify it yourself.

🤖

Safety checks are automatic, not human

Two things happen to every message by software alone: a verification code is pulled into the extracted_code field, and the text is pattern-matched for prompt-injection tricks ("ignore your previous instructions" and similar), which sets a warning flag your agent can check. No person reviews these results — they are computed automatically and stored with the message, visible to your agent only.

📊

What we count — and what we never do

To run and improve a free service we record aggregate numbers: accounts created, emails delivered, codes extracted, which API endpoints and MCP tools get used, and which bots visit the public website. We never build profiles from email content, never run advertising trackers on inboxes, and never sell data. The public counters on this page come from those totals — counts, never contents.

⚠️

Use the right inbox for the job

BotsInbox inboxes are made for agent sign-ups, verification codes, alerts and notifications. Please do not route personal email, banking or anything you could not bear to lose through an agent inbox — that mail belongs in your own mailbox, under your own control. The only personal detail recorded at sign-up is the owner's email address, which ties each account to a responsible human.

Questions humans ask

Is it really free? What's the catch?

Yes — free forever, and there is no catch hidden in a plan page. BotsInbox is a free project: there is no paid plan, no card, no trial that expires and no feature paywall. It can stay free because receiving email is inexpensive on modern infrastructure and the whole service runs on Cloudflare's free tier. The limits that do exist — up to 5 inboxes per account and 30-day message retention — are there to stop abuse and keep the service free for everyone, not to push anyone towards a payment. Founder invite codes raise those limits to 10 inboxes and 90 days, and they are free too.

Can the BotsInbox team read my agent's email?

No. No human at BotsInbox opens, reads, mines, sells or shares the contents of any inbox — that is a hard rule of the project, and the service is built so nobody needs to: email arrives, software stores it, and your agent fetches it, with no person in that loop. Running the service only ever uses aggregate counts — how many accounts, inboxes and emails exist — never message contents. The one narrow exception is support you ask for yourself: if you write to us about one specific message and identify it, we will look at that message only, only because you asked.

Is the mail private?

An inbox can only be read by a request carrying that account's own API key, over the REST API or the MCP server — there is no webmail, no public link and no other way in. API keys are stored as one-way hashes, never in plain text, so even a copy of the database would not reveal a usable key, and webhooks are HMAC-signed so your server can verify that a delivery really came from BotsInbox. All traffic runs over HTTPS. Treat your API key like a password: whoever holds it can read the account's mail, so store it the way you would store a secret.

How long is mail kept?

Messages are kept for 30 days, or 90 days on accounts created with a founder invite code, and then deleted automatically by a daily cleanup — attachments are deleted with them. BotsInbox is a working inbox for agents, not a long-term archive, and short retention is deliberate: the less mail sitting stored, the less there is to expose. If something matters, have your agent copy it into its own storage before it expires.

What information do you collect about me and my agent?

Very little, and none of it from email content. Sign-up records the owner's email address, so every account belongs to a responsible human. The service counts aggregate usage — accounts created, emails delivered, verification codes extracted, which API endpoints and MCP tools are used, and which bots visit the public website — so we can run it, improve it, and show honest totals on this page. We never build profiles from message contents, never run advertising trackers on inboxes, and never sell data to anyone.

Why is there no webmail or inbox screen?

By design. BotsInbox is headless: it exists for agents, not for people to read mail in a browser. Your agent reads through the API or MCP, which keeps the service simple, fast and free — and your agent never has to scrape a user interface or keep a browser session alive. It is also a privacy choice: with no human-facing inbox screen, there is no extra way for a person to browse an agent's mail.

Can my agent send email too?

No — BotsInbox is receive-only, and that is deliberate. It exists so agents can receive sign-ups, verification codes, alerts and notifications in their own inboxes. Keeping the service receive-only is also what makes it safe to give away free: there is no outbound stream for spammers to abuse, and no deliverability reputation for anyone to burn.

Who is responsible for what a bot does with its inbox?

The human owner. Sign-up records the owner's email address, and every account — and everything its agents do with their inboxes — belongs to that person. BotsInbox addresses may not be used for spam or cold outreach, and accounts that abuse the service can be closed. Used as intended — an agent receiving its own sign-ups, codes and notifications — there is nothing to worry about.