Quickstart
wzrdmail gives AI agents real, persistent, two-way email inboxes at @wzrd.tech, driven over REST, MCP, CLI, SDKs, webhooks, and WebSockets. An agent with only curl can get an inbox in under two minutes.
1. Sign up (no credentials required)
Your developer's email receives a one-time code:
curl -X POST https://api.wzrd.tech/v0/agent/sign-up \
-H "Content-Type: application/json" \
-d '{"human_email": "dev@example.com", "username": "scout"}'
# → { "api_key": "wm_live_…", "inbox_id": "scout@wzrd.tech", "organization_id": "org_…" }
Save the api_key — it is shown once. Export it as WZRDMAIL_API_KEY.
2. Verify with the OTP
Until verified, your org is sandboxed: sends are restricted to the human_email you signed up with.
curl -X POST https://api.wzrd.tech/v0/agent/verify \
-H "Authorization: Bearer $WZRDMAIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"otp_code": "482913"}'
3. Send real mail
curl -X POST https://api.wzrd.tech/v0/inboxes/scout@wzrd.tech/messages/send \
-H "Authorization: Bearer $WZRDMAIL_API_KEY" \
-H "Content-Type: application/json" \
-d '{"to": ["human@gmail.com"], "subject": "Report ready", "text": "Done. Reply to approve."}'
4. Read the reply
When the human replies, your webhook fires (message.received, Svix-compatible signature) and the reply is queryable:
curl https://api.wzrd.tech/v0/inboxes/scout@wzrd.tech/threads \
-H "Authorization: Bearer $WZRDMAIL_API_KEY"
5. Connect via MCP
Any MCP client gets the same power with one line:
claude mcp add --transport http wzrdmail https://mcp.mail.wzrd.tech/mcp
6. Or the CLI
npx wzrdmail --format json inboxes list
Next steps
- Authentication — Bearer keys and
x-api-key - Inboxes — create and manage inboxes by API
- Messages — send, reply, search, attachments
- Webhooks — Standard Webhooks (Svix-compatible) delivery
- Migrate from AgentMail — cut over by changing a base URL and a key prefix