Mail Agent plugin for Claude, ChatGPT & Claude Code
Your agent writes the letter. We post it.
Your agent writes the letter right in the chat and checks the PDF against DIN 5008. We post it: we print it, put it in an envelope and take it to the post office, with registered mail and proof of delivery if you like. Prepaid, from €1.12 per letter.
- Hosted in Germany
- No subscription
- Money back if rejected
Connects with
- Claude
- Claude Code
- ChatGPT
- Gemini
- Soforce – Platform for AI automations
Works with AI assistants and automation platforms such as Claude, ChatGPT, Gemini and Soforce, and with any other client that supports remote MCP servers with OAuth sign-in. The brands mentioned belong to their respective owners.
No. 01How it works
From chat to letter in three steps.
- 1
Connect once
Enter one URL in Claude.ai, ChatGPT or Claude Code and sign in. Standard OAuth, no API keys in the chat history.
- 2
Your agent checks
Before anything costs money, the agent checks the A4 format, address field and page count and gets an exact price quote, which it shows you.
- 3
We print & post
You confirm, the amount is reserved from your balance, and the letter is printed and posted in Germany. You can see the status on the web or simply ask your agent.
No. 02The tools
Nine tools, made for agents.
Every tool at a glance: what it does and whether it costs money. Read-only tools are marked as such, so that your client only asks when it matters.
validate_letterread-only(pdf, options)Checks A4 format, address field according to DIN 5008, clear zones and page count. Returns the detected recipient and a price quote. Never costs anything.
get_quoteread-only(pages, color, duplex, registered, international)The exact gross price before anything is sent, so your agent can tell you what the letter costs.
send_letteruses balance(pdf, options, idempotency_key?)Checks again, reserves the amount from your balance and releases the job to print. Marked as destructive so that your client asks first.
get_letterread-only(letter_id)Status history, detected address, price and a preview of the processed PDF.
list_lettersread-only(status?, limit?)All your letters, whether sent through the website or by an agent.
cancel_letterasks first(letter_id)Withdraws a letter and refunds the full amount. Only possible right after sending, before the letter is handed over to printing.
get_balanceread-only()Your current balance and a link to top up when it runs low.
create_upload_urlcreates files, free()Pre-signed upload for PDFs up to 20 MB, for agents that can run curl.
compose_lettercreates files, free(sender, recipient, subject, body)Typesets a DIN 5008 letter from plain text, so your agent does not have to generate its own PDF.
No. 03Use cases
Recurring postal mail, sent automatically.
Zetteldesk does not only work in chat: an automation platform such as Soforce can trigger letters for you, for example invoices and payment reminders. How to connect Soforce to Zetteldesk.
Invoices by post
The invoice from your accounting software goes out by post automatically, without anyone having to print, stuff envelopes or stamp.
How it worksPayment reminders and dunning letters
As soon as an invoice is overdue, the letter is created from your template and sent, at the stage you define.
How it worksOther office mail
Cancellations, confirmations, invitations and mail to authorities: everything that regularly goes out as a letter.
How it works
No. 04Pricing
You pay per letter. Postage included.
The format depends on the number of sheets, just like at the post office. Double-sided printing halves the sheet count, so the letter often falls into a cheaper format.
| Format | Sheets | From |
|---|---|---|
| Standard | 1–3 | €1.12 |
| Compact | 4–9 | €1.54 |
| Large | 10–96 | €2.65 |
| Maxi | 97–179 | €9.12 |
Options
Prices in euros, incl. 19% VAT, printing, envelope and postage. Your agent always gets the exact price in advance via get_quote, before anything is sent.
Balance
from €10
- No subscription, no base fee
- Card, SEPA direct debit or PayPal through Stripe
- Rejected or cancelled letters are fully refunded
No. 05Connect
One URL. For every agent that speaks MCP.
Zetteldesk Mail is a remote MCP server with OAuth sign-in. Choose your client and follow the steps. You can disconnect connected clients at any time in the dashboard.
https://mcp.zetteldesk.com/mail- Open Settings → Connectors and choose Add custom connector.
- Name it Zetteldesk Mail and paste the server URL:
https://mcp.zetteldesk.com/mail - Sign in with your Zetteldesk account when Claude opens the sign-in window. Done.
- Add the server in the terminal:
$ claude mcp add --transport http zetteldesk-mail https://mcp.zetteldesk.com/mail - Run
/mcpin Claude Code and select zetteldesk-mail to sign in in the browser. - Ask Claude to check a PDF before you send your first letter.
- Under Settings → Apps & Connectors → Advanced, enable Developer mode.
- Create a connector, choose OAuth and use this MCP server URL:
https://mcp.zetteldesk.com/mail - Sign in to Zetteldesk and then enable the connector in the chat.
- Add the server in the terminal:
$ gemini mcp add --transport http zetteldesk-mail https://mcp.zetteldesk.com/mail - Then start the Gemini CLI and enter:
> /mcp auth zetteldesk-mail - A browser window opens: sign in to Zetteldesk and confirm with Allow.
- Open
app.soforce.ai/appsand click "Add connection" in the "MCP connections" section. - Enter Zetteldesk as the name and the server URL as the "Server address":
https://mcp.zetteldesk.com/mail - Under "How it signs in", choose "Sign in with Zetteldesk".
- Click "Connect to Zetteldesk", sign in in the new window and confirm with Allow.
No. 06FAQ
What you should know before sending.
Is there a subscription?
No. Zetteldesk works with a prepaid balance: you top up from €10 by card, SEPA direct debit or PayPal through Stripe, and each letter is deducted when it is sent. No base fee, no minimum volume.
Which apps can connect to Zetteldesk?
Any AI assistant or application that supports remote MCP servers with OAuth sign-in, for example Claude, Claude Code, ChatGPT, the Gemini CLI and Codex, as well as automation platforms such as Soforce. The steps for each client are in the “Connect” section.
Can I automate sending invoices by post?
Yes. An automation, for example in Soforce, generates the invoice PDF, checks it with validate_letter and sends it with send_letter. A fixed idempotency_key per invoice ensures that a repeated call does not send the letter twice. The automation queries the status with get_letter or list_letters. Payment comes from your balance, which you can have topped up automatically if you wish. Note: for invoices between businesses in Germany, the e-invoicing rules apply. Check whether a paper invoice is still permitted in your case; this is not legal advice.
How can I send payment reminders and dunning letters by post automatically?
You set this up once and it then runs on its own. In an automation platform such as Soforce you create a workflow that regularly looks at your list of open items, for example from your accounting or a spreadsheet. For each overdue invoice it creates a letter from your template and has it sent as a letter through Zetteldesk. It then writes the dispatch date back into your list.
You decide yourself after how many days of delay which stage goes out, from the friendly reminder to the formal dunning letter. The same reminder is never sent twice.
How to connect Zetteldesk to the platform is explained here.
Which recurring office tasks involving paper mail can be automated?
Anything that regularly goes out as a letter can be set up as a workflow, for example in an automation platform such as Soforce. Typical examples:
- Invoices and credit notes to customers who do not receive e-invoices: the invoice from your accounting software goes out by post automatically.
- Payment reminders and dunning letters: as soon as an invoice is overdue, the matching letter is created from your template.
- Cancellation and contract letters: the letter is created from the contract data and sent.
- Confirmations and notices: a new order or a new registration triggers the letter automatically.
- Invitations and mandatory notices, for example for meetings: each recipient gets their own letter.
- Mail to authorities: applications and notifications that must be received in writing are created and sent.
You set up the workflow once in Soforce and connect it to Zetteldesk (instructions). Every letter is checked before it is sent, and your balance is only charged when it is sent.
How do I connect Zetteldesk to an automation platform such as Soforce?
Zetteldesk works with automation platforms such as Soforce that support remote MCP servers with OAuth sign-in. In Soforce:
- Open
app.soforce.ai/appsand click "Add connection" under "MCP connections". - Enter Zetteldesk as the name and the server URL from the Connect section as the "Server address".
- Choose "Sign in with Zetteldesk", sign in and confirm with Allow.
After that, your automations can call all Zetteldesk tools.
Can my agent send letters without asking me?
The sending tools are marked as destructive. Claude and ChatGPT therefore ask for your confirmation before every call. In addition, your agent can never spend more than your balance: the balance is a hard upper limit.
What happens if a letter is rejected?
Every PDF is checked before we charge anything. If the print service provider later cannot read the address after all or reports a problem, the letter is marked as rejected and the full amount is automatically credited back to your balance.
Can I withdraw a letter?
Yes, as long as it has not gone to print yet: cancel it in the dashboard or have your agent call cancel_letter, and you get the full amount back. Once the letter has been handed over to printing and dispatch, it cannot be retrieved, just like a letter you have already dropped in the mailbox.
Where is my data stored?
Zetteldesk is hosted in Germany. Uploaded PDFs are stored encrypted and deleted automatically after 90 days. The letters are printed and sent by our print and dispatch partner in Germany. We comply with the GDPR and, on request, conclude a data processing agreement (DPA) with you.
What does the PDF need to look like?
A4 portrait, with the recipient in the address field according to DIN 5008 on the first page, exactly as every German letter template provides anyway. If something does not fit, validate_letter tells your agent exactly what to correct.
Can I send letters abroad?
The letters are printed and posted in Germany. Letters abroad are possible at the respective international postage rate. You will see the exact price before sending.
Do I get receipts?
All prices include 19% VAT. For every top-up you receive a receipt from Stripe, and on the billing page every letter is listed with its price.
You don't need a printer for your next letter.
Top up €10, connect your agent and send your first letter today.