Skip to main content
Glama
googlarz

Proton Mail Bridge MCP

  ____  ____   ___ _____ ___  _   _   __  __    _    ___ _
 |  _ \|  _ \ / _ \_   _/ _ \| \ | | |  \/  |  / \  |_ _| |
 | |_) | |_) | | | || || | | |  \| | | |\/| | / _ \  | || |
 |  __/|  _ <| |_| || || |_| | |\  | | |  | |/ ___ \ | || |___
 |_|   |_| \_\\___/ |_| \___/|_| \_| |_|  |_/_/   \_\___|_____|
  Bridge Client  ·  CLI + Claude Desktop MCP for Proton Mail

Proton Mail Bridge Client

proton-mail-bridge-client MCP server

Ein voll ausgestatteter CLI- und Claude Desktop-MCP für Proton Mail, aufgebaut auf Proton Bridge.

Über

Proton Mail Bridge Client bietet Ihnen zwei Möglichkeiten, Proton Mail programmatisch zu nutzen:

CLI — ein Terminal-Client mit vollständiger Parität zur MCP-Oberfläche. Lesen, suchen, senden, Entwürfe erstellen, archivieren, Ordner verwalten, Threads triagieren und Diagnosen ausführen — alles über die Befehlszeile. Der Textkörper kann über stdin weitergeleitet werden. Die Ausgabe ist entweder menschenlesbar oder --json.

MCP-Server — dieselben Funktionen, die als Model Context Protocol-Server bereitgestellt werden, sodass Claude Desktop Ihre Proton Mail in jedem Chat verwalten kann, auf demselben Computer, auf dem Proton Bridge läuft.

Beide Oberflächen teilen sich dasselbe Backend: Proton Bridge IMAP und SMTP, einen lokalen SQLite-Index und ein Audit-Log. Kein gehostetes Relay, keine Remote-URL, keine Cloud-Abhängigkeit außer Ihrem eigenen Proton-Konto.

Voraussetzungen

  • Node.js 18+

  • Proton Bridge installiert und angemeldet

  • Von Bridge: IMAP-Host/Port, SMTP-Host/Port, Benutzername, Bridge-Passwort

Standardmäßige lokale Bridge-Adressen: IMAP 127.0.0.1:1143, SMTP 127.0.0.1:1025

Installation

git clone https://github.com/googlarz/proton-mail-bridge-client.git
cd proton-mail-bridge-client
npm install
npm run build

Nach der Installation ist das proton-mail-bridge-client (und proton-mail-bridge) Binary aus dem Repo verfügbar.

Für eine systemweite Installation: npm install -g .

CLI

proton-mail-bridge-client <command> [options]

Alle Befehle unterstützen --json für maschinenlesbare Ausgaben.

Lesen

proton-mail-bridge-client emails --folder INBOX --limit 25
proton-mail-bridge-client read INBOX::25642
proton-mail-bridge-client search "invoice" --limit 10
proton-mail-bridge-client search --live --from openai.com
proton-mail-bridge-client attachments INBOX::25642

Triage

proton-mail-bridge-client digest
proton-mail-bridge-client threads "quarterly review"
proton-mail-bridge-client actionable
proton-mail-bridge-client followups
proton-mail-bridge-client thread-brief <threadId>
proton-mail-bridge-client document-threads --category invoice
proton-mail-bridge-client meeting-context alice@example.com

Verfassen & Senden

proton-mail-bridge-client send --to bob@example.com --subject "Hey" --body "Hello"
echo "Hello" | proton-mail-bridge-client send --to bob@example.com --subject "Hey"
proton-mail-bridge-client reply INBOX::25642 --body "On it."
proton-mail-bridge-client reply INBOX::25642 --reply-all --body "On it."
proton-mail-bridge-client forward INBOX::25642 --to carol@example.com

Postfach-Aktionen

proton-mail-bridge-client move INBOX::25642 Folders/Archive
proton-mail-bridge-client archive INBOX::25642
proton-mail-bridge-client trash INBOX::25642
proton-mail-bridge-client restore Trash::25642
proton-mail-bridge-client mark-read INBOX::25642
proton-mail-bridge-client mark-read INBOX::25642 --unread
proton-mail-bridge-client star INBOX::25642
proton-mail-bridge-client delete INBOX::25642
proton-mail-bridge-client batch archive INBOX::100,INBOX::101,INBOX::102
proton-mail-bridge-client thread-action <threadId> archive

Ordner

proton-mail-bridge-client folders
proton-mail-bridge-client create-folder Folders/Receipts
proton-mail-bridge-client rename-folder Folders/Receipts Folders/Bills
proton-mail-bridge-client delete-folder Folders/Bills

Entwürfe

proton-mail-bridge-client drafts
proton-mail-bridge-client draft-create --to bob@example.com --subject "Draft" --body "..."
proton-mail-bridge-client draft-read <id>
proton-mail-bridge-client draft-update <id> --subject "Updated subject"
proton-mail-bridge-client draft-reply INBOX::25642 --body "Will do."
proton-mail-bridge-client draft-forward INBOX::25642 --to carol@example.com
proton-mail-bridge-client draft-sync <id>
proton-mail-bridge-client draft-send <id>
proton-mail-bridge-client draft-delete <id>
proton-mail-bridge-client remote-drafts

Analytik & Diagnostik

proton-mail-bridge-client stats
proton-mail-bridge-client analytics
proton-mail-bridge-client contacts
proton-mail-bridge-client volume-trends --days 14
proton-mail-bridge-client watch --timeout 30
proton-mail-bridge-client test-email you@example.com
proton-mail-bridge-client doctor
proton-mail-bridge-client status
proton-mail-bridge-client sync --folder INBOX --limit 150

MCP-Tool-Durchleitung

Jedes MCP-Tool kann auch direkt über die CLI aufgerufen werden:

proton-mail-bridge-client tools
proton-mail-bridge-client tool get_connection_status --json
proton-mail-bridge-client tool search_indexed_emails --args '{"query":"invoice","limit":3}'

Umgebung

Die CLI und der MCP-Server lesen beide dieselben Umgebungsvariablen:

export PROTONMAIL_USERNAME='you@proton.me'
export PROTONMAIL_PASSWORD='your-bridge-password'
export PROTONMAIL_IMAP_HOST='127.0.0.1'
export PROTONMAIL_IMAP_PORT='1143'
export PROTONMAIL_IMAP_SECURE='false'
export PROTONMAIL_SMTP_HOST='127.0.0.1'
export PROTONMAIL_SMTP_PORT='1025'
export PROTONMAIL_DATA_DIR="$HOME/.proton-mail-bridge-client"

Optionale Geheimnisse per Datei oder Befehl (vermeidet Rohdaten-Anmeldeinformationen in der Shell):

export PROTONMAIL_USERNAME_FILE='/path/to/user.txt'
export PROTONMAIL_PASSWORD_FILE='/path/to/pass.txt'
# or
export PROTONMAIL_USERNAME_COMMAND='pass proton/username'
export PROTONMAIL_PASSWORD_COMMAND='pass proton/password'

Vollständige Laufzeit-Flags:

export PROTONMAIL_READ_ONLY='false'
export PROTONMAIL_ALLOW_SEND='true'
export PROTONMAIL_ALLOW_REMOTE_DRAFT_SYNC='true'
export PROTONMAIL_ALLOWED_ACTIONS='mark_read,mark_unread,star,unstar,archive,trash,restore'
export PROTONMAIL_AUTO_SYNC='true'
export PROTONMAIL_STARTUP_SYNC='true'
export PROTONMAIL_SYNC_INTERVAL_MINUTES='5'
export PROTONMAIL_IDLE_WATCH='true'
export PROTONMAIL_IDLE_MAX_SECONDS='30'

Claude Desktop-Einrichtung

Um den Proton Mail Bridge Client mit Claude Desktop zu verwenden, führen Sie den geführten Assistenten aus:

npm run setup:claude-desktop

Dies wird:

  • Ihre lokalen Bridge-Ports überprüfen

  • nach Ihrem Bridge-Benutzernamen und Passwort fragen

  • das Projekt bauen

  • eine stabile systemweite Laufzeitumgebung installieren

  • den Claude Desktop MCP-Konfigurationseintrag schreiben

Nach der Einrichtung: Starten Sie Claude Desktop neu, lassen Sie Proton Bridge geöffnet und prüfen Sie dann +Connectorsproton-mail-bridge.

Die Laufzeitumgebung wird hier installiert:

  • macOS: ~/Library/Application Support/Proton Mail Bridge Client

  • Linux: ~/.local/share/proton-mail-bridge-client

  • Windows: %APPDATA%\Proton Mail Bridge Client

Aktualisierung

git pull
npm run update:claude-desktop

Manuelle Claude Desktop-Konfiguration

{
  "mcpServers": {
    "proton-mail-bridge": {
      "command": "node",
      "args": ["/path/to/runtime/dist/index.js"],
      "cwd": "/path/to/runtime",
      "env": {
        "PROTONMAIL_USERNAME": "you@proton.me",
        "PROTONMAIL_PASSWORD": "your-bridge-password",
        "PROTONMAIL_IMAP_HOST": "127.0.0.1",
        "PROTONMAIL_IMAP_PORT": "1143",
        "PROTONMAIL_IMAP_SECURE": "false",
        "PROTONMAIL_SMTP_HOST": "127.0.0.1",
        "PROTONMAIL_SMTP_PORT": "1025"
      }
    }
  }
}

Hinweis zu macOS

Unter macOS muss better-sqlite3 ein natives Binary sein, das für die aktuelle Maschine gebaut wurde. Das Installationsprogramm erledigt dies automatisch. Wenn Sie aus einer anderen Umgebung wiederherstellen oder einen Absturz eines nativen Moduls sehen, führen Sie npm run update:claude-desktop aus.

Vertrauen & Sicherheit

  • Läuft vollständig lokal — kein gehostetes Relay, keine Remote-URL.

  • Kommuniziert mit Proton Mail nur über Proton Bridge auf Ihrem eigenen Computer.

  • PROTONMAIL_READ_ONLY=true deaktiviert alle Schreibvorgänge.

  • PROTONMAIL_ALLOW_SEND=false deaktiviert SMTP-Sendungen, ohne andere Schreibvorgänge zu beeinträchtigen.

  • PROTONMAIL_ALLOWED_ACTIONS steuert, welche Postfach-Mutationen zulässig sind.

  • batch_email_action und apply_thread_action unterstützen beide dryRun: true.

  • Unterstützt *_FILE und *_COMMAND Geheimnisse, sodass Rohdaten-Anmeldeinformationen niemals in der Konfiguration oder im Shell-Verlauf erscheinen.

  • Systemordner (INBOX, Sent, Trash, Spam, Archive, All Mail) sind vor versehentlichem Löschen geschützt.

Vergleich mit Claudes nativem Gmail-Connector

Fähigkeit

Gmail-Connector

Proton Mail Bridge Client

Einrichtung

First-Party OAuth

Erfordert Proton Bridge + diesen Client

Suchen und Lesen

Native Claude UX

IMAP + lokaler Index

E-Mail senden

Nein

Ja

Entwurfs-Workflows

Bessere First-Party UX

Volle Kontrolle inkl. Remote-Entwurfs-Sync

Anhangsinhalt

Begrenzt

Abrufen und Speichern

Postfach-Aktionen

Begrenzt

Vollständig (markieren, verschieben, archivieren, löschen, wiederherstellen, batch)

Ordnerverwaltung

Nein

Ja (erstellen, umbenennen, löschen)

CLI-Zugriff

Nein

Volle Parität mit MCP

Original-Nachrichtenlinks

Besser

Nur MCP-Ressourcenlinks

Native Threads/Labels

Gmail-nativ

Rekonstruiert aus IMAP

Tool-Oberfläche

Senden

send_email · send_test_email · reply_to_email · forward_email

Entwürfe

create_draft · create_reply_draft · create_forward_draft · create_thread_reply_draft · list_drafts · list_remote_drafts · get_draft · update_draft · sync_draft_to_remote · send_draft · delete_draft

Lesen

get_emails · get_email_by_id · search_emails · list_attachments · get_attachment_content · save_attachments · save_attachment

Triage

get_folders · sync_folders · get_labels · get_threads · get_thread_by_id · get_thread_brief · get_actionable_threads · get_inbox_digest · get_follow_up_candidates · find_document_threads · prepare_meeting_context

Aktionen

mark_email_read · star_email · move_email · archive_email · trash_email · restore_email · delete_email · batch_email_action · apply_thread_action

Ordnerverwaltung

create_folder · rename_folder · delete_folder

Analytik

get_email_stats · get_email_analytics · get_contacts · get_volume_trends

Diagnostik

get_connection_status · get_runtime_status · run_doctor · get_audit_logs · run_background_sync · wait_for_mailbox_changes · sync_emails · get_index_status · search_indexed_emails · clear_cache · clear_index · get_logs

Betriebshinweise

  • get_emails und search_emails geben eine zusammengesetzte emailId zurück — verwenden Sie diese für Lesevorgänge und Aktionen.

  • Der lokale Index befindet sich unter PROTONMAIL_DATA_DIR/mail-index.sqlite.

  • Audit-Logs befinden sich unter PROTONMAIL_DATA_DIR/audit.log.

  • Hintergrund-Sync und IMAP IDLE halten den Index aktuell, hängen aber davon ab, dass Bridge aktiv bleibt.

  • search_indexed_emails unterstützt from:, to:, subject:, label:, domain: Abkürzungen.

  • Entwurfs-Sync erfolgt nach dem Best-Effort-Prinzip — der lokale Entwurf bleibt immer erhalten, auch wenn der Remote-Sync fehlschlägt.

Lizenz

MIT

Install Server
A
license - permissive license
A
quality
A
maintenance

Maintenance

Maintainers
30dResponse time
3dRelease cycle
12Releases (12mo)

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/googlarz/proton-mail-bridge-client'

If you have feedback or need assistance with the MCP directory API, please join our Discord server