Skip to content

SadaSend is a transactional email API with a Model Context Protocol (MCP) server and per-key agent guardrails, built for developers who let AI agents send email on their behalf.

Transactional email · MCP server · SDKs

Give your agent email.
Not your whole account.

Scoped keys, recipient allowlists, and approval mode. The email API built for agents you don't fully trust yet.

3,000 emails free · no card · every guardrail on every plan

POST /keysdashboard only
// The ceiling, set once when the key is minted.
// The agent gets the key. It cannot widen any of this.
{
  scopes: ['send', 'read'],        // what it may do
  allowlist: ['@yourteam.com'],    // who it may reach
  rateLimitMax: 50,             // how fast
  rateLimitWindow: '1h',
  mode: 'approval',        // who signs off
}

Built on the rails Gmail actually checks

Since November 2025 Google, Yahoo, Microsoft and Apple reject non-compliant bulk mail outright rather than filtering it. SadaSend enforces the requirements in the product, not in a help article.

SPF · DKIM · DMARC
Verified before your first send is accepted
RFC 8058
One-click unsubscribe headers injected automatically
Complaint rate
Watched per account, throttled before 0.10%
Suppression
Automatic and account-wide on every hard bounce
The difference

Every other email MCP hands your agent the whole account

Read the competition carefully and they all promise the same thing: native access to the full platform — Mailgun’s MCP server exposes more than fifty operations, Postmark’s exposes four. That is a capability claim with no control story, and it is the reason your engineering lead says no. SadaSend puts a ceiling on every key, and every guardrail below is on the free plan.

agent request
attemptedkeys.create
RefusedKey scope is [send, read]. Minting credentials requires a human in the dashboard.

Enforced at the API before the send reaches the queue — not in a doc, not in a lint rule, and not dependent on the agent behaving.

Safety Architecture

How SadaSend guarantees zero runaway email

The barrier sits in front of the queue, not in a help doc or an agent prompt. Every send is validated at the edge before anything is dispatched.

01Unprivileged input

Agent initiates tool call

Your agent (Claude, Cursor, LangChain) invokes send_email with recipient and body. It cannot alter the key’s preset limits.

02Enforced at edge

SadaSend evaluates policy gate

Every send is verified against the key’s immutable scopes, recipient allowlist, hourly rate limits, and suppression history.

03Zero runaway risk

Instant dispatch or human sign-off

Allowlisted transactional sends dispatch in <50ms. Out-of-allowlist sends are refused; high-risk sends hold in pending_approval for 1-click human clearance.

Enterprise AssuranceStrict governance enforced for SOC 2 & HIPAA compliance
Zero LLM Training
Customer email content, variables, and payloads are never used to train or fine-tune models.
Immutable Scopes
Agents hold keys that can only send or read — never mint keys, delete domains, or remove suppressions.
Cryptographic Webhooks
HMAC-SHA256 signatures with timestamp replay protection on all delivery events.
Immutable Audit Trail
Every attempt, refusal, and delivery event is logged with microsecond timestamps for forensic review.
Quickstart

Under ten lines to a delivered email

Install, set a key, send. The TypeScript SDK is hand-written — typed template variables, a real error class per failure mode, and automatic retry with idempotency so a retried send is never a duplicate.

bun add sadasend
import { SadaSend } from 'sadasend';

const sada = new SadaSend(process.env.SADASEND_API_KEY!);

await sada.emails.send({
  from: 'you@yourdomain.com',
  to: 'user@example.com',
  subject: 'Welcome aboard',
  html: '<strong>It works.</strong>',
});
Zero-dependency TypeScript clientRead Bun docs

Looking for full API schemas, error codes, webhook verifiers, or MCP tools?

Explore all documentation
Model Context Protocol

A hosted MCP server with a ceiling

Point your agent at SadaSend and it gets the tools it needs — and none of the ones it should never have. No install required.

claude mcp add --transport http sadasend https://mcp.sadasend.com
Every tool the agent gets, and the scope each one requires.
ToolScopeDoes
send_emailsendSend one, honouring key mode and allowlist
preview_emailsendDry run — render and validate, never send
get_email_statusreadDelivery state and full event trail
search_emailsreadFiltered log search — the debugging workhorse
list_domainsreadWhich domains are verified — the first check when a send is refused
check_domain_setupdomainsPer-record DNS diagnosis, with the fix
list_templatesreadTemplates on the account, with the variables each expects
check_suppressionreadIs this address suppressed, and why
render_templatereadPreview a template without sending
get_statsreadBounce and complaint rates for a window
Deliberately absent

There is no create_api_key, no delete_domain, and no remove_suppression tool. An agent that can mint its own credentials or un-suppress a complainer has no ceiling. Those operations live in the dashboard, where a human is present.

Ask your agent to
  • Send the welcome email to the three users who signed up this morning.
  • Why did our password reset to dana@example.com bounce yesterday?
  • Check whether our DNS is set up correctly for sending.
  • Show me every email that bounced this week, grouped by reason.
Honest comparison

Where we win, and where we do not

Every row in our column is a capability you can check against the API today, not a roadmap. The last two rows are ones we do not have and do not pretend to — a comparison that concedes nothing is an advert, and you would read it as one.

CapabilitySadaSendResendPostmarkLoops
Transactional email APIYesYesYesYes
MCP serverYesYesPartialYes
Per-key recipient allowlistYesNoNoNo
Agent approval modeYesNoNoNo
Dry run / preview sendYesPartialNoNo
Scoped API keysYesPartialPartialPartial
Per-key rate limitYesPartialPartialPartial
SMTP relayYesYesYesNo
Free deliverability toolsYesNoPartialNo
Marketing campaign suiteNoYesNoYes
Visual email designerNoYesNoYes
All 19 rows, on the pricing page
Pricing

The ceiling is not a paid feature

Every guardrail and all ten MCP tools are on every plan, including the free one. Selling the safety only to people who can already afford it would mean nobody ever finds out why it matters.

Save 15–20% yearly
Free$0The full agent stack, free.
  • 3,000 emails — one time, not monthly
  • 100 emails a day
  • 1 sending domain
  • 30-day log retention
  • All ten MCP tools
  • Every guardrail
Start free
Starter$12/monthFor the first real thing you ship.
  • 10,000 emails / month
  • No daily limit
  • 5 sending domains
  • 30-day log retention
  • SMTP relay
  • Free migration
Start free
ProMost picked$19/monthFor a product with paying customers.
  • 50,000 emails / month
  • 25 sending domains
  • 30-day log retention
  • 10 webhook endpoints
  • Webhook replay
  • Per-attempt delivery logs
Start free
Scale$79/monthWhen email is load-bearing.
  • 250,000 emails / month
  • Unlimited sending domains
  • 90-day log retention
  • 25 webhook endpoints
  • Priority sending queue
  • Response time commitment
Start free
Compare all plans and features

Start on the free plan without a card. Yearly billing saves 15% on Starter and Pro, 20% on Scale. Overage is $0.60, $0.50 or $0.40 per thousand by plan, charged only on what you send above it. No per-seat pricing, ever — that is a model for sales tools, not developer infrastructure.

Questions

Straight answers

Each answer stands on its own, so you can quote it without the rest of the page.

Get started

Give your agent email in under two minutes.

Mint a scoped key, set your team allowlist, and point your agent at our hosted MCP server. 3,000 emails free forever — no credit card required.

  • 3,000 emails free forever
  • All 10 MCP tools included
  • Every guardrail active on Day 1
  • No credit card required