Pick your agent
It's a remote MCP server over streamable HTTP. Nothing to install, no key to paste.
claude mcp add --transport http \ receivemx https://receive.mx/mcp
{ "mcpServers": { "receivemx":
{ "url": "https://receive.mx/mcp" } } }codex mcp add receivemx \ --url https://receive.mx/mcp
Five tools, all free
Each tool is the same as a REST route, so MCP and the API always behave the same way.
| Tool | What it does | Returns |
|---|---|---|
new_inbox POST /v1/inboxes | Makes a fresh address. style: "name" gives a person-like one (sarah.kelly87@…); pick name_origin and include_year if you like. | address, token, expires_at |
get_code start here GET …/code?timeout=60 | Waits for the next email and returns just the code or verify link. | code, link, from, subject |
wait_for_email GET …/wait?timeout=60 | Waits for the next email matching optional from / subject filters. | from, subject, text, links[], code |
list_emails GET …/emails | Everything received so far. | [ {id, from, subject, at} ] |
read_email GET …/emails/{id} | One email in full: text, HTML, links. | full message |
What it looks like in a chat
Sign up for a Linear trial for the test workspace and finish the email check.
I'll get an inbox first.
Signed up with that address. Waiting for the code…
Done. The workspace is verified and the trial is active.
Things to ask your agent
Make a receive.mx inbox and use it to test our sign-up flow end to end.
Create an account on the staging site and click the confirm link from the email.
Check that our password-reset email arrives within 30 seconds and has a working link.
Give my bot its own address on myagent.dev so it can get its own invoices.
The same thing, over HTTP
Base URL https://receive.mx/v1. Use the inbox token as a bearer token. Waits answer as soon as mail arrives, or return 204 after the timeout (90 s max), so just call again.
GET /v1/inboxes/k7f2q9@asyncpost.com/wait?timeout=60&from=linear.app Authorization: Bearer rx_9f3c… { "id": "em_01JA…", "from": "Linear <noreply@linear.app>", "subject": "Your Linear login code", "received_at": "2026-10-09T09:14:05Z", "text": "Your login code is 482913. It expires in 10 minutes…", "code": "482913", "links": [ "https://linear.app/auth/magic?token=…" ] }
Fair use on the free tier
Every error says what to do next
| Code | What happened | What to do |
|---|---|---|
| TIMEOUT | No email arrived within the wait. | Call again. Nothing is lost. |
| RATE_LIMITED | Too many new inboxes from this IP. | Reuse an inbox, or wait for retry_after. |
| INBOX_EXPIRED | The 24 hours are up and it's been deleted. | Make a new inbox. |
| BAD_TOKEN | Wrong or missing token for this address. | Use the token from new_inbox. |
| DOMAIN_BLOCKED | A site rejected the shared domain. | Use your own domain. |