How to send physical mail from an AI agent
Install the Mailsnail MCP server and have any AI agent mail a real USPS letter, postcard, or certified mail — no signup, pay-per-piece.
Your agent can already send an email, call an API, open a browser, and write code. The one channel it couldn't reach was the oldest one — a stamped envelope in someone's mailbox. Mailsnail closes that gap. It's an MCP server, so any agent that speaks the protocol — Claude Code, Claude Desktop, Cursor, Codex, the OpenAI Agents SDK — can send a real, postmarked USPS letter, postcard, or certified piece with a single tool call.
No account. No API keys. The agent pays per piece.
The 30-second version
claude mcp add mailsnail -- npx -y mailsnail
That's the whole install. Ask your agent to mail a postcard, and it will — routing through seven tools it now has:
verify_address— check an address is deliverable (USPS CASS) before you spend a centpreview_letter— render the exact piece and return the exact price, nothing chargedsend_letter— mail a first-class or certified lettersend_postcard— mail a 4×6 postcardget_letter/list_letters— check status and historycancel_letter— pull a piece back before it hits production
What it costs
Flat and public, so an agent can reason about the price before it commits:
- First-class letter — $1.50
- Certified mail — $9.00
- Postcard — $1.00
preview_letter returns that number with nothing charged. The agent decides whether the send is worth it and — if you've wired it that way — checks with you first.
How "no signup" actually works
This is the part people don't expect. Most mail APIs make you create an account, add a card, and provision keys before the first send. Mailsnail doesn't. Payment happens per piece, at the moment of the call, over the Machine Payments Protocol (HTTP 402) using a Stripe Shared Payment Token — the agent spends inside the wallet you authorized, and nowhere else. If a piece fails to mail, the charge is refunded automatically. (USDC/x402 settlement is coming, for agents that would rather pay in stablecoin.)
The upshot is simple: the gap between "install" and "a letter is in the mail" is minutes, not a procurement cycle.
What you'd actually use it for
Not bulk marketing blasts. The pieces that fit are low-volume and high-intent — the ones never worth standing up a print vendor for:
- A thank-you note mailed after a support ticket is resolved well
- A welcome kit when someone signs a contract
- Preliminary lien notices and other compliance mail that legally has to be physical and postmarked
- Condolence or birthday cards a personal-assistant agent sends without being reminded
- One personalized letter to one account when a trigger fires, written by the agent that has the context
Send your first piece
- Install —
claude mcp add mailsnail -- npx -y mailsnail - Ask — tell your agent to mail a postcard to a specific address
- It verifies —
verify_addressconfirms the address is deliverable - It previews —
preview_letterreturns the rendered piece and the exact price, still $0 charged - It sends — on your go-ahead,
send_letter/send_postcardmails it and returns a tracking id - You check —
get_lettershows status;cancel_letterworks until it's in production
Related guides
- Send a letter from Claude, Cursor, or Codex — the exact per-client setup.
- A Lob / PostGrid alternative built for agents — if you're moving off an incumbent mail API.
FAQ
Is Mailsnail the only way to send physical mail from an AI agent?
No. PostalForm and PieterPost are agent-native too, and APIs like Lob and PostGrid can do it if you hold an account and keys. Mailsnail's edge is no signup, flat public pricing, certified mail as a first-class path, and being open-source and provider-agnostic.
Does the agent need my credit card on file?
No standing account. Payment is per piece via Stripe over HTTP 402, inside the wallet you authorized, and auto-refunded if the piece fails to mail.
Which agent runtimes can send mail with Mailsnail?
Anything that speaks MCP — Claude Code, Claude Desktop, Cursor, Codex CLI, and the OpenAI Agents SDK. One server works from every runtime.
Can I use my own mail provider?
Yes. Managed mode is the default with no signup, but you can point Mailsnail at your own Click2Mail or Lob credentials if you already have them.
Wire Mailsnail into your agent
Drop this into your client's MCP config (or use /setup for one-line installs).
{
"mcpServers": {
"mailsnail": {
"command": "npx",
"args": [
"-y",
"mailsnail"
],
"env": {
"MAIL_PROVIDER": "managed",
"MAIL_API_BASE_URL": "https://api.mailsnail.dev"
}
}
}
}