thin.host / use-cases / email

Transactional email
for agent-built apps

Send sign-in links, receipts, and alerts from your AI-built product. Verified sending domain, bounce protection, and three integration paths — pick the one that fits.

What it is

A thin, deliverability-hardened email layer your agent can call without worrying about email credentials, bounce tracking, or suppression lists.

📩

Transactional only

Sign-in links, receipts, order confirmations, password resets, alerts — the notifications your users actually expect. Not marketing, not bulk.

Verified sending domain

Send from a thin.host shared verified domain out of the box, or add your own custom sending domain. DKIM, SPF, and DMARC are already configured.

🛡

Built-in protection

Hard bounces and complaints are tracked automatically. Recipients that bounced or complained are suppressed — keeping your sender reputation clean.

The allowlist & domain model

Deliverability is a shared resource. A few gates keep the pool healthy for everyone.

Gates before a message goes out

  • Platform allowlist — your platform account must be approved for email. Apply from the platform dashboard. Founder-reviewed; quick turnaround for legitimate transactional use.
  • Verified sending domain — the from address must use either the shared mail.thin.host domain (works immediately after approval) or a custom sending domain you've verified in the platform settings. A mismatched domain returns invalid_from_domain — surface it to the user, don't retry.
  • Suppression list — any prior hard bounce or complaint auto-suppresses that recipient. Sending to a suppressed address returns recipient_suppressed — don't retry, surface it.
  • Rate limits — a rolling 24h send cap per platform. Returning rate_limited means wait for the window to reset.

Three integration paths

Use the MCP tool in Claude, call the REST endpoint directly, or point your SMTP client at the relay — same gates apply to all three.

🔐 MCP Tool — send_email

Add the thin.host MCP server to Claude Desktop or Claude Code. Your agent calls send_email directly — no REST boilerplate, agent-friendly error codes.

# Claude agent calls the tool
send_email({
  "to": "user@example.com",
  "subject": "Your sign-in link",
  "text": "Click here: https://..."
})
# → { "status": "sent", "id": "..." }

📄 REST API — POST /v1/emails

Call the JSON endpoint with your platform API key. Works from any language or CI pipeline. Returns the thin.host message ID and final status.

curl -X POST https://thin.host/v1/emails \
  -H "X-Platform-API-Key: th_live_..." \
  -d '{"to":"user@example.com",
     "subject":"Welcome",
     "text":"Hello!"}'

📷 SMTP Relay — smtp.thin.host:587

Issue per-app SMTP credentials from the platform dashboard (Settings → Transactional Email). Point any SMTP client at the relay — the same allowlist, suppression, and rate-limit gates apply.

# Python smtplib example
import smtplib
smtp = smtplib.SMTP("smtp.thin.host", 587)
smtp.login("app_user", "app_pass")
smtp.sendmail(from_, to, msg)

Drop-in Claude skill

Don't want to wire up MCP config manually? The thin.host email skill walks Claude through the API key + verified domain precondition and generates the right tool call or curl command.

The skill is a drop-in SKILL.md that lives in your Claude project or agent context. It handles the "is your domain verified?" check and teaches Claude when to surface errors vs. retry.

See the MCP + skill docs

How to get started

Approval to first send in three steps. Full walkthrough in the email docs.

1

Create a platform account

Sign up for a thin.host platform account. The platform dashboard is where your API key and email settings live.

2

Apply for email access

Toggle "Request email access" in Settings → Transactional Email. Founder-reviewed — approved within one business day for legitimate transactional use.

3

Send your first email

Use the shared mail.thin.host sender immediately, or verify a custom domain. Then call the MCP tool, REST endpoint, or SMTP relay.

Ready to send?

Create an account and apply for email access — first message in minutes.

Get started free