wirlwirl.dev

Send the right email at the right time.

Automated sequences for developers who use Resend.
Define once, runs forever.

Start for free
app.ts
await wirl.track({
  email: 'user@example.com',
  event: 'user.signup'
});

Event-driven

Trigger sequences from user actions. Sign up, upgrade, cancel — each event starts the right email flow.

Built for Resend

Bring your Resend API key. Wirl handles sequences, timing, and contact management. You keep full control of your sending.

Code-first

One SDK function. No drag-and-drop builders. Define sequences in the dashboard or via the API. Works with any stack.

Works with Claude Code

Connect Wirl as an MCP server. Create templates, build sequences, and manage contacts from your terminal.

terminal
$ claude mcp add --transport http wirl https://app.wirl.dev/mcp

"Create a welcome sequence that sends 3 emails over a week"
"Show me stats for the onboarding sequence"
"Add a follow-up template for churned users"
20+
MCP tools
1 cmd
to connect
OAuth
browser auth

How it works

1

Connect Resend

Add your Resend API key. Set your sender email and domain.

2

Build sequences

Create email templates and arrange them into timed sequences. Trigger on any event you define.

3

Track events

Call wirl.track() from your app. Contacts are enrolled automatically.

Simple SDK

Four methods. That's all you need.

track()

Track an event for a contact

identify()

Update contact properties

trigger()

Start a sequence manually

exit()

Remove from a sequence

Simple pricing

Free while in beta. Pay only for emails via Resend.

$0
Free during beta
  • Unlimited sequences
  • Unlimited contacts
  • Unlimited events
  • Your Resend account
Get started free

Start sending in minutes.

Free to start. No credit card required.

Start for free