Paper plane

The open-source layer
your Amazon SES needs

Transactional email, contacts, templates, broadcasts, tracking, and MCP. One PostgreSQL database.

Product email without a second sending bill

Keep SES pricing and ownership. Add the interface and API your team actually needs.

SES through IAM roles

Connect a least-privilege role. tinysend stores no long-lived AWS access keys.

Transactional API & SDK

Send inline or versioned-template email with idempotency and domain-scoped API keys.

One-click Cloudflare DNS

Install the exact SES DKIM and MAIL FROM records, with a manual fallback for every DNS provider.

Contact synchronization

Upsert users and attributes from each business, then broadcast to every subscribed contact.

Versioned templates

Edit reusable HTML and text templates with variables and an immutable version history.

Agent compatible

Use eleven MCP tools for sends, contacts, templates, broadcasts, domains, and delivery health.

Transactional API

One call. Safe to retry.

The SDK sends through a verified domain, respects suppressions, renders templates, and places work on the PostgreSQL queue.

Idempotency key prevents duplicate sends
Domain-scoped keys and explicit permissions
Optional open and link tracking per domain
SES bounce and complaint suppression
import { Tinysend } from '@tinysend/sdk'

const email = new Tinysend({
  apiKey: process.env.TINYSEND_API_KEY
})

await email.emails.send({
  to: '[email protected]',
  templateId: 'welcome-template-id',
  variables: { firstName: 'Ada' }
}, {
  idempotencyKey: 'welcome-user-42'
})

How it works

Three steps to production email

1

Connect Amazon SES

Launch the CloudFormation quick-create stack and paste its least-privilege role ARN.

2

Verify a domain

Install the SES records with Cloudflare in one click or copy the same DNS plan manually.

3

Send through API or UI

Create a scoped key, use the npm SDK or MCP, and inspect every delivery from the dashboard.

Pricing

The software is free. SES sends the email.

Self-host tinysend under the MIT License. You pay your normal infrastructure and Amazon SES charges, with no tinysend margin per email.

tinysend

$0

Open-source software

  • Transactional API and npm SDK
  • Cloudflare and manual DNS setup
  • Contacts, templates, and broadcasts
  • Optional first-party tracking
  • MCP server for AI agents
  • Dark and light mode

Your costs

AWS + hosting

Amazon publishes SES prices by region. Your database and app can run on any Docker host. Cloudflare DNS integration is optional.

tinysend email markup$0
Contacts storedUnlimited
Sending providerAmazon SES
See deployment requirements →

Why it exists

Use SES without rebuilding Postmark.

tinysend focuses on the small operational layer a product team needs.

Keep SES economics

AWS bills delivery directly. tinysend adds no per-message markup.

Keep account ownership

Revoke the IAM role at any time. Long-lived AWS keys are never stored.

Keep a clean interface

Dashboard, API, SDK, and MCP all use the same domain-scoped model.

Please bring your own sender...

from: tinysend

to: you

with: love

Ready to start sending?

Self-host free. Connect your SES account. Keep your sending cost at AWS rates.