claude-mail-mcp: Der Email- und Kalender-Connector für alle, die nicht bei Google sind
Wer Claude an sein Postfach anbinden will, findet im Connector-Store von Anthropic genau eine Option: Gmail. Wer sein Email-Konto bei Mailbox.org, Fastmail, iCloud, Mailcow oder dem eigenen Postfix-Server hat, schaut in die Röhre. Das ist absurd, weil IMAP/SMTP seit den 90ern ein offener Standard ist und CalDAV seit über zehn Jahren der De-facto-Standard für Kalender außerhalb von Google.
Deshalb habe ich claude-mail-mcp gebaut — einen self-hosted Connector, der Claude über die Standardprotokolle an dein Postfach hängt. MIT-lizenziert, ohne SaaS-Mittelsmann, ohne Vendor-Lock-in.
Was es ist
Ein Streamable-HTTP-MCP-Server, der drei Brücken baut:
- IMAP für eingehende Mails (Inbox lesen, suchen, archivieren)
- SMTP für ausgehende Mails (senden, Entwürfe in den Drafts-Ordner ablegen)
- CalDAV für deinen Kalender (Termine listen, anlegen, freie Slots finden)
Du installierst ihn auf deinem Server, trägst die Zugangsdaten deines Postfachs in eine .env-Datei ein, und ab dann arbeitet Claude direkt mit deiner echten Mailbox — kein Umweg über eine fremde API.
Was drin steckt
13 Tools in v0.1:
- Mail (9):
list_folders,list_messages,search_messages,get_message,send_message,create_draft,mark_read,move_message,delete_message - Kalender (4, optional):
list_calendars,list_events,create_event,find_free_slot
search_messages macht echte server-seitige IMAP-Suche, nicht „alles laden und im Speicher filtern" — auf Mailboxen mit 30.000 Mails ist das ein deutlicher Unterschied. find_free_slot mergt Busy-Intervalle über mehrere Kalender und liefert direkt nutzbare Terminvorschläge zurück (z.B. „nächste freie Stunde zwischen Montag und Freitag, 9–18 Uhr").
Sichere Defaults
send_message schickt sofort raus — wer reviewen will, nimmt create_draft und öffnet den Entwurf im Mail-Client. delete_message ist als destruktiv markiert, sodass Claude.ai in der UI automatisch nach Bestätigung fragt. Wer's reversibel will, nutzt move_message in den Trash-Ordner.
Wie es technisch läuft
- TypeScript, Node 20, Express 5
- imapflow für IMAP (eine Long-Lived-Connection mit Per-Mailbox-Locking), nodemailer für SMTP, tsdav + ical.js für CalDAV
- MCP SDK + Bearer-Auth — vorne dran derselbe OAuth-Shim wie bei meinem claude-meta-mcp, damit Claude.ai den Connector über die normale „Connector hinzufügen"-Oberfläche einbinden kann
- nginx als Reverse Proxy, pm2 als Process Manager
Insgesamt ein Node-Prozess pro Postfach, eine .env-Datei mit deinen Credentials, ein Bearer-Token am MCP-Endpoint. Keine Datenbank, kein State, nichts zum Verwalten.
Was du brauchst
- Linux-VPS mit Node 20
- Ein IMAP/SMTP-Postfach (App-spezifisches Passwort, wenn dein Provider 2FA verlangt)
- Optional: eine CalDAV-URL für den Kalender (sonst startet der Server mail-only)
- nginx + TLS-Zertifikat
Die README listet die exakten Hostnamen und App-Passwort-Links für die wichtigsten Provider — Mailbox.org, Fastmail, iCloud, Gmail, Nextcloud — direkt zum Copy-Paste.
Warum Open Source
Self-hosted KI-Tools funktionieren nur, wenn Leute sie auch betreiben können. Wer einen ähnlichen Connector für CardDAV (Kontakte), JMAP oder Matrix bauen will, kann den Aufbau hier 1:1 als Vorlage nehmen — IMAP-Client, MCP-Tool-Registry und OAuth-Shim sind sauber getrennt und unter MIT-Lizenz forkbar.
Roadmap
- v0.2: Multi-Tenant mit SQLite-Token-Store, damit ein Deployment mehrere User bedienen kann
- v0.3: Threading-Ansicht (
list_threads), Attachment-Download, iMIP-Einladungen über SMTP - v0.4: CardDAV (Kontakte), JMAP-Support für Fastmail-Power-User
Das Repo liegt auf GitHub. Mehr zur Idee und zur kompletten Tool-Liste auf der Repo-Seite hier.
