Private email hosting with built-in tracking. Agent-provisioned. 60 seconds to first mailbox.
Setup is identical for every agent — eib init detects your agent config file (CLAUDE.md, .cursorrules, .windsurfrules, …) automatically.
npm install -g emailinabox eib signup my-project --local
API key saved to .eib/config.json. Free tier: 3 mailboxes, 1 domain, 100 emails/day, open + click tracking included.
Already have a key? eib login YOUR_KEY --local
.eib/ to your .gitignore.Run eib init — it prints a skill block for CLAUDE.md / .cursorrules / .windsurfrules:
eib init # quickstart guide + config snippet eib init --agent-schema # machine-readable JSON command contract
eib deploy mycompany.com --email admin --password ******** # → mailbox + DKIM + DNS provisioned eib dns mycompany.com # required DNS records eib dns-check mycompany.com
eib send --from admin@mycompany.com --to lead@client.com \
--subject "Proposal" --html "<p>Hi…</p>"
eib engagement 7d # open + click rates
Save as .mcp.json in your project root:
{
"mcpServers": {
"emailinabox": {
"type": "stdio",
"command": "eib",
"args": ["mcp-serve"]
}
}
}
12 EmailInABox tools discovered automatically.
{
"mcpServers": {
"emailinabox": {
"type": "sse",
"url": "https://mcp.emailinabox.com/sse",
"headers": {
"Authorization": "Bearer YOUR_EIB_API_KEY"
}
}
}
}
Same 12 tools, no CLI install needed.
curl -X POST https://emailinabox.com/api/signup \
-H "Content-Type: application/json" \
-d '{"tenantId": "my-project", "agent": "claude-code"}'
# → { "apiKey": "eib_free_my_project_..." }
Use Authorization: Bearer <apiKey> on all /api/* endpoints.
eib --help · Upgrade to Standard ($4.99/mailbox/mo, 200 mailboxes) at emailinabox.com/auth/signup