Proton Mail Bridge MCP
____ ____ ___ _____ ___ _ _ __ __ _ ___ _
| _ \| _ \ / _ \_ _/ _ \| \ | | | \/ | / \ |_ _| |
| |_) | |_) | | | || || | | | \| | | |\/| | / _ \ | || |
| __/| _ <| |_| || || |_| | |\ | | | | |/ ___ \ | || |___
|_| |_| \_\\___/ |_| \___/|_| \_| |_| |_/_/ \_\___|_____|
Bridge Client · CLI + Claude Desktop MCP for Proton MailProton Mail Bridge Client
Proton Bridge上に構築された、Proton Mail向けのフル機能CLIおよびClaude Desktop MCPです。
概要
Proton Mail Bridge Clientを使用すると、プログラムからProton Mailを利用する2つの方法が提供されます。
CLI — MCPインターフェースと完全に同等の機能を備えたターミナルクライアントです。コマンドラインから、メールの読み取り、検索、送信、下書き作成、アーカイブ、フォルダ管理、スレッドのトリアージ、診断の実行がすべて可能です。本文は標準入力(stdin)からパイプで渡すことができます。出力は人間が読みやすい形式、または --json 形式を選択できます。
MCPサーバー — 同じ機能をModel Context Protocolサーバーとして公開しているため、Proton Bridgeが実行されているマシン上で、Claude Desktopがチャットを通じてProton Mailを読み取り、管理できるようになります。
どちらのインターフェースも、Proton BridgeのIMAPおよびSMTP、ローカルのSQLiteインデックス、監査ログという同じバックエンドを共有しています。ホストされたリレーやリモートURLは使用せず、自身のProtonアカウント以外のクラウド依存関係はありません。
前提条件
Node.js 18以上
Proton Bridge がインストールされ、サインイン済みであること
Bridgeから取得した情報: IMAPホスト/ポート、SMTPホスト/ポート、ユーザー名、Bridgeパスワード
Bridgeのデフォルトのローカルアドレス: IMAP 127.0.0.1:1143、SMTP 127.0.0.1:1025
インストール
git clone https://github.com/googlarz/proton-mail-bridge-client.git
cd proton-mail-bridge-client
npm install
npm run buildインストール後、proton-mail-bridge-client(および proton-mail-bridge)バイナリがリポジトリから利用可能になります。
システム全体にインストールする場合: npm install -g .
CLI
proton-mail-bridge-client <command> [options]すべてのコマンドは、機械可読な出力のために --json をサポートしています。
読み取り
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トリアージ
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作成と送信
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メールボックス操作
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フォルダ
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下書き
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分析と診断
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 150MCPツールのパススルー
すべてのMCPツールは、CLIから直接呼び出すことも可能です:
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}'環境変数
CLIとMCPサーバーは、どちらも同じ環境変数を読み取ります:
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"ファイルまたはコマンド経由のオプションのシークレット(シェルに生の認証情報を残さないようにします):
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'完全なランタイムフラグ:
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の設定
Proton Mail Bridge ClientをClaude Desktopで使用するには、ガイド付きウィザードを実行してください:
npm run setup:claude-desktopこれにより、以下の処理が行われます:
ローカルのBridgeポートの確認
Bridgeのユーザー名とパスワードの入力
プロジェクトのビルド
安定したマシン全体のランタイムのインストール
Claude Desktop MCP設定エントリの書き込み
設定後、Claude Desktopを再起動し、Proton Bridgeを開いたままにしてから、+ → Connectors → proton-mail-bridge を確認してください。
ランタイムは以下の場所にインストールされます:
macOS:
~/Library/Application Support/Proton Mail Bridge ClientLinux:
~/.local/share/proton-mail-bridge-clientWindows:
%APPDATA%\Proton Mail Bridge Client
アップデート
git pull
npm run update:claude-desktopClaude Desktopの手動設定
{
"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"
}
}
}
}macOSに関する注意
macOSでは、better-sqlite3 は現在のマシン用にビルドされたネイティブバイナリである必要があります。インストーラーがこれを自動的に処理します。別の環境から復元した場合や、ネイティブモジュールのクラッシュが発生した場合は、npm run update:claude-desktop を実行してください。
信頼と安全性
完全にローカルで実行されます — ホストされたリレーやリモートURLはありません。
Proton Mailとは、自身のマシン上のProton Bridgeを通じてのみ通信します。
PROTONMAIL_READ_ONLY=trueはすべての書き込み操作を無効にします。PROTONMAIL_ALLOW_SEND=falseは、他の書き込み操作に影響を与えずにSMTP送信を無効にします。PROTONMAIL_ALLOWED_ACTIONSは、許可されるメールボックスの変更操作を制御します。batch_email_actionおよびapply_thread_actionはどちらもdryRun: trueをサポートしています。*_FILEおよび*_COMMANDシークレットをサポートしているため、生の認証情報が設定やシェルの履歴に残ることはありません。システムフォルダ(受信トレイ、送信済み、ゴミ箱、迷惑メール、アーカイブ、すべてのメール)は、誤削除から保護されています。
ClaudeのネイティブGmailコネクタとの比較
機能 | Gmailコネクタ | Proton Mail Bridge Client |
セットアップ | ファーストパーティOAuth | Proton Bridge + 本クライアントが必要 |
検索と読み取り | ネイティブClaude UX | IMAP + ローカルインデックス |
メールの送信 | いいえ | はい |
下書きワークフロー | より優れたファーストパーティUX | リモート下書き同期を含む完全な制御 |
添付ファイルの内容 | 限定的 | 取得および保存 |
メールボックス操作 | 限定的 | 完全(スター、移動、アーカイブ、ゴミ箱、復元、削除、バッチ) |
フォルダ管理 | いいえ | はい(作成、名前変更、削除) |
CLIアクセス | いいえ | MCPと完全な同等性 |
元のメッセージリンク | より優れている | MCPリソースリンクのみ |
ネイティブスレッド/ラベル | Gmailネイティブ | IMAPから再構築 |
ツールインターフェース
送信
send_email · send_test_email · reply_to_email · forward_email
下書き
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
読み取り
get_emails · get_email_by_id · search_emails · list_attachments · get_attachment_content · save_attachments · save_attachment
トリアージ
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
アクション
mark_email_read · star_email · move_email · archive_email · trash_email · restore_email · delete_email · batch_email_action · apply_thread_action
フォルダ管理
create_folder · rename_folder · delete_folder
分析
get_email_stats · get_email_analytics · get_contacts · get_volume_trends
診断
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
運用上の注意
get_emailsおよびsearch_emailsは複合的なemailIdを返します。読み取りやアクションにはこれを使用してください。ローカルインデックスは
PROTONMAIL_DATA_DIR/mail-index.sqliteに保存されます。監査ログは
PROTONMAIL_DATA_DIR/audit.logに保存されます。バックグラウンド同期とIMAP IDLEはインデックスを最新の状態に保ちますが、Bridgeが起動している必要があります。
search_indexed_emailsはfrom:、to:、subject:、label:、domain:のショートカットをサポートしています。下書きの同期はベストエフォート型です。リモート同期が失敗した場合でも、ローカルの下書きは常に保持されます。
ライセンス
MIT
Maintenance
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