Notify for AI agents: a send-only email API (vs agent inboxes)
Send product email from agents with notifycx-mcp and agent bootstrap — not personal agent inboxes like Grok mail or Muse Gmail.
Coding agents and automation tools need to send email on behalf of your product — password resets, receipts, alerts — from your verified domain. That is different from an agent inbox: a mailbox the agent reads (Grok Bot mail, Muse-connected Gmail, a dot’s personal account).
Notify is the send-only pipe: POST /api/email/send, x-api-key, HTML you supply, logs and webhooks. Official MCP: npx -y notifycx-mcp. No dashboard? Email OTP bootstrap at /api/agent/bootstrap/start and /confirm.
Send pipe vs agent inbox
| Notify | Agent inbox (examples) | |
|---|---|---|
| Purpose | Your app’s transactional mail | Agent reads/writes personal mail |
| From address | Your verified domain | Provider’s domain or user’s Gmail |
| Integration | HTTPS API, SDK, MCP | Bot UI, OAuth to user mailbox |
| Fits password reset for your SaaS | Yes | No — wrong trust boundary |
Built-in agent mail is fine for the agent’s correspondence. It is not a substitute for user-facing product email. See also: Send email from agents & automation.
Three ways agents use Notify
1. MCP in the IDE (Cursor, Claude Code, Codex)
Install notifycx-mcp with NOTIFY_API_KEY (full_access for domain setup). Tools cover send, test send, domains, DNS check, webhooks, logs, usage.
- Install page: /mcp
- Guide: Official MCP (notifycx-mcp)
MCP helps during a session. Put production sends in app code with notifycx or fetch.
2. Agent bootstrap (no dashboard)
For cloud agents (ChatGPT Actions, Claude Actions, Lovable secrets, Codex) that should not open a browser dashboard:
POST https://notify.cx/api/agent/bootstrap/startwith{ email, intent: "signup"|"recover", acceptTerms: true }- User pastes OTP →
POST /api/agent/bootstrap/confirm→ storeapi_keyonce add_domain→ user publishesdnsRecords→check_domain→send_email
OpenAPI: /api-docs. Doc: Agent bootstrap (no dashboard). Kill switch env: AGENT_BOOTSTRAP_ENABLED=false.
Auth header for send is always x-api-key, not Bearer.
3. HTTPS from automation (n8n, Zapier, Custom GPT Actions)
Same send contract from any HTTP client. Recipe index: Agents & automation map.
Minimal send (agent-written app code)
await fetch('https://notify.cx/api/email/send', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'x-api-key': process.env.NOTIFY_API_KEY!
},
body: JSON.stringify({
to: 'user@example.com',
from: 'noreply@your-verified-domain.com',
subject: 'Your receipt',
html: '<p>Thanks for your purchase.</p>'
})
});
Sandbox rehearsal: append /test to the send path. Production requires verified domain. Sandbox vs production.
Pricing snapshot (as of Nov 2026)
| Plan | Price | Emails/mo |
|---|---|---|
| Free | $0 | 1,000 |
| Pro | $10/mo | 10,000 |
| Scale | $50/mo | 100,000 |
Notify is price-competitive among managed APIs around ~3k–10k/mo; at ~50k/mo, Resend ($20/50k), Mailtrap ($20/50k), and SendGrid Essentials (~$19.95) list below Scale $50/100k — see cheapest side-project comparison.
Full pricing · Transactional email API pricing