proton-mail-mcp について
proton-mail-mcp は、ローカルの Bridge と CLI を通じて Proton Mail、Pass、Drive を操作する MCP サーバーです。Calendar は現在スタブです。ローカル stdio と認証付き HTTP に対応し、書き込み、削除、認証情報の操作には承認が必要です。
主な機能
- 01メールの閲覧、検索、送信、整理
- 02値を公開せずに Pass の項目を管理
- 03Drive ファイルの一覧、転送、整理
- 04エージェントのワークフローは既定で dry-run
- 05変更操作はターミナルでの承認が必要
- 06stdio と認証付き HTTP に対応
活用シーン
- 01Proton Mail の受信トレイの確認と整理
- 02パスワードの強度と重複の監査
- 03Proton Drive ファイルの確認や整理
- 04HTTP プロキシ経由での MCP アクセス運用
MCP 対応
有効な製品に応じて、Proton Mail、Pass、Drive、Calendar の状態を扱うツールを MCP クライアントに提供します。stdio と streamable HTTP に対応し、変更操作にはターミナルでの承認が必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
npx -y @alexendros/proton-mail-mcpPROTON_BRIDGE_HOSTHostname or IP of the Proton Mail Bridge (default: 127.0.0.1 for local, or container hostname in compose).PROTON_IMAP_PORTIMAP port exposed by Proton Mail Bridge (default: 1143).PROTON_SMTP_PORTSMTP port exposed by Proton Mail Bridge (default: 1025).PROTON_USERNAMEBridge username (your Proton Mail address).PROTON_PASSWORDシークレットBridge-generated app password (NOT your Proton account password).ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Proton Suite Agent
このドキュメントの目的
- 目標: リポジトリの状況、クイックスタート、正式なドキュメントへの案内を示します。
- 構成: 基本情報 → 状況 → 読む順序のガイド → インストール、ツール、エージェント、品質。
- 状況に応じて統合する内容: TypeScript/MCP スタック、Bridge の境界、デフォルトの dry-run、ファサードとしての Makefile。
開くタイミング:概要の把握、状況確認、関連ドキュメントへの案内。 承認日:2026年8月15日 対象読者:エージェント、経営陣、ユーザー 権限:参照 分類:必須 レビューまでの日数:14 リポジトリ内:はい 状態:有効 順序:1 目的:エントリーポイントとして、状況とクイックスタート、次に読むべき内容を示します。 改訂:運用 担当者:Alexendros レビュー日:2026年8月29日 役割:入口 パス:./README.md
📌目的
参照用のエントリーポイントです。現在の状況、起動方法、次に開くべきドキュメントを説明します。譲れない原則はCONSTITUTION.mdに記載されています。
現状の概要
状況: 2026年9月24日 · v1.4.0
現在のフェーズ: フェーズ1(Pass/エージェント/DX)のチェックリスト完了 · 次:フェーズ2(Calendar、ブロック中)。ROADMAP.mdを参照してください。
メトリクス: デフォルトで47個のツール(Calendar 実験版では50個) · 965件のテスト · カバレッジ約98%(ゲート95%)。
| レイヤー | 状態 |
|---|---|
| Mail(Bridge IMAP/SMTP) | 稼働中 |
Pass(pass / gopass) | 稼働中 |
Drive(proton-drive CLI) | 稼働中(ADR-006) |
| Calendar | Bridge で CalDAV が実装されるまでスタブ(ADR-005) |
| 正式なドキュメント | サブフェーズ0完了 |
Proton Suite 向けのマルチプロダクト対応 MCP サーバー:Mail、Pass、Drive、Calendar(スタブ)。エージェントはメールボックスを操作し、パスワードを管理し、ファイルを同期します。すべてローカルで実行し、E2E コンテンツを外部へ流出させません。
| モード | 説明 |
|---|---|
| stdio(デフォルト) | ネットワークを公開しません。ローカルの AI エージェントに最適です。 |
| streamable HTTP | Bearer 認証 + オリジン許可リスト。Docker/リバースプロキシ向けです。 |
次に読むドキュメント
| 必要な情報 | 開くドキュメント | まだ読まない |
|---|---|---|
| 譲れない原則 | CONSTITUTION.md | ROADMAP 全体 |
| 作業順序とフェーズ | ROADMAP.md | コード |
| エージェントとして実装する方法 | AGENTS.md | ARCHITECTURE 全体 |
| レイヤーとフロー | ARCHITECTURE.md | コード |
| 脅威モデル | SECURITY.md | — |
| コントリビュート/PR | CONTRIBUTING.md | — |
| MCP ツールの仕様 | docs/api/mcp-tools.md | — |
| 意思決定(理由) | docs/adr/ | — |
| ガイドの索引 | docs/README.md | — |
| プレイブック + プロンプト | playbooks/README.md | — |
初回セッション: この README → AGENTS.md §§ TL;DR + 基本情報 → ROADMAP.mdの現在のフェーズ → 引用されている ADR/アンカー。
クイックスタート
前提条件: Node ≥ 22、pnpm、ローカルの Proton Mail Bridge、パスワード管理用のpassまたはgopass + gpg。
1. インストールとビルド
git clone https://github.com/Soluciones-Alexendros/protonsuite-tools.git
cd protonsuite-tools
pnpm install && pnpm build && pnpm run smoke
2. 環境変数を設定する
export [email protected]
export PROTON_BRIDGE_PASS=your-bridge-password
export [email protected]
3. MCP クライアントを接続する
{
"mcpServers": {
"protonsuite": {
"command": "npx",
"args": ["-y", "@alexendros/protonsuite-agent", "protonsuite-mcp"],
"env": {
"MCP_TRANSPORT": "stdio",
"PROTON_BRIDGE_USER": "[email protected]",
"PROTON_BRIDGE_PASS": "your-bridge-password",
"PROTON_MAIL_FROM": "[email protected]",
"PROTON_BRIDGE_TLS_INSECURE": "true",
"PROTON_PASS_ENABLED": "true",
},
},
},
}
セキュリティ: ディスク上に bridge password を残さないよう、
PROTON_PASS_BRIDGE_PATH=proton/bridge/passwordまたはconnectors/stdio-wrapper.sh.exampleの JIT ラッパーを使用してください。
4. メールボックスを整理する(dry-run)
AGENT_DRY_RUN=true pnpm exec protonsuite-agent organize
# o: npx -y @alexendros/protonsuite-agent organize
エージェントは inbox を分析し、変更を適用せずに計画を提示します。確認後にのみ AGENT_DRY_RUN を無効にしてください。
MCP ツール
利用可能なツールの一覧は、有効になっている製品によって異なります。無効な製品はツールを登録も通知もしません。
| 設定 | ツール |
|---|---|
| デフォルト(Mail + Drive) | 39 |
+ Pass と Calendar(PROTON_PASS_ENABLED=true、PROTON_CALENDAR_ENABLED=true) | 47 |
+ 実験的な Calendar(PROTON_CALENDAR_EXPERIMENTAL=true) | 50 |
| すべての製品を無効化 | 5(proton_suite_status と proton_ecosystem_* のみ) |
読み取り:response_format: "markdown" | "json"。
| 製品 | ツール | 概要 |
|---|---|---|
| 14 | 一覧表示、検索、読み取り、送信、返信、転送、フラグ設定、移動、削除、添付ファイル | |
| Pass | 4+ | 一覧表示、取得(値なし)、生成、ヘルスチェック、エージェント経由の監査 |
| Drive | 8+ | 状態、一覧表示、ダウンロード、アップロード、共有、監査、整理 |
| Calendar | stub | Bridge 経由の CalDAV に対応するまで {available: false}(ADR-005) |
| Suite / Bridge / Ecosystem / Agent | 残り | 統合ステータス、Bridge、バイナリ、エージェント計画 |
生成された契約:docs/api/mcp-tools.md。ガイド:docs/agent-quickstart.md。
書き込みには承認が必要です
読み取りでは何も求められません。書き込み、削除、認証情報の操作は実行されません。サーバーがリクエストを作成し、提示します。
protonsuite-agent pending # qué espera aprobación, con los campos sensibles tachados
protonsuite-agent approve <id> # lo autorizas
protonsuite-agent reject <id> # lo deniegas
承認後、まったく同じ呼び出しをもう一度行ってください。宛先を変更したり、本文の文字を1つ変更したりすると、承認は無効になり、再度承認が必要です。
承認は端末からのみ行えます。MCP 経由やモデルへの依頼では承認できません。詳しくはADR-0009をご覧ください。
エージェント
| 目標 | パイプライン |
|---|---|
setup | Bridge(IMAP + SMTP)を確認 |
organize | inbox、フォルダー/ラベル、脅威を分類 |
monitor / alert | 読み取り専用 — アラート |
pass-audit | 強度、重複、ローテーション計画。読み取り専用:store への書き込みは行いません。 |
suite-status | 製品横断レポート |
discover / check-imap | 接続性 |
| Drive の目標 | drive-audit、drive-organize、… |
Drive CLI
sudo wget -q 'https://proton.me/download/drive/cli/linux/proton-drive' \
-O /usr/local/bin/proton-drive && sudo chmod +x /usr/local/bin/proton-drive
proton-drive auth login
DRIVE_ENABLED=true が必要です(デフォルト)。docs/drive-audit.mdをご覧ください。
デプロイ
docker compose up -d
docs/deployment-http-docker.mdをご覧ください。インストーラー:scripts/install.sh。
ローカルインターフェース
apps/web に静的 SPA があります(ADR-0007):ランディングページとステータスパネルです。MCP プロセスには含まれません。pnpm run build で apps/web/dist に生成されます。Bridge がなくても開けます。パネルはローカルアダプターの「サンプルデータ」を使用し、認証情報を求めません。Calendar は引き続き stub です。
ドキュメント
| ドキュメント | 対象者 | 内容 |
|---|---|---|
CONSTITUTION.md | 全員 | 譲れない原則 |
ROADMAP.md | 方針策定者/エージェント | フェーズと終了基準 |
AGENTS.md | AI エージェント | 運用上の契約 |
docs/human-quickstart.md | ユーザー | 手順に沿ったインストール |
docs/agent-quickstart.md | AI エージェント | ツールと例 |
docs/bridge-core.md | オペレーター | ヘッドレス Bridge |
docs/deployment-http-docker.md | DevOps | Docker、認証、compose での Pass |
docs/local-stdio-secrets.md | オペレーター | JIT ラッパー |
docs/alerting.md | オペレーター | Webhook、ntfy、ログ |
docs/drive-audit.md | オペレーター | Drive CLI |
ARCHITECTURE.md | 開発者 | レイヤーとフロー |
SECURITY.md | 監査担当者 | 脅威モデル |
CONTRIBUTING.md | コントリビューター | PR、pnpm、テスト |
SUPPORT.md | ユーザー | サポート窓口 |
CODE_OF_CONDUCT.md | コミュニティ | 行動規範 |
docs/ | 全員 | アーキテクチャ/ガイド/運用手順書 |
playbooks/ | オペレーター | ワークフロー+プロンプト |
品質
標準のインターフェース(Makefile):make lint、make test、make smoke、make validate。
make validate # lint + typecheck + test + build + smoke
pnpm run typecheck # TypeScript strict
pnpm test # Vitest (953+)
pnpm run coverage # Coverage v8 — gate 95%, objetivo ≥98%
pnpm run build # tsc → dist/ y SPA apps/web (tokens, contraste, vite)
pnpm run smoke # stdio initialize + tools/list
pnpm run knip # Unused deps/exports
pnpm docs:check # mcp-tools.md en sync
セキュリティ(概要)
- Bearer 認証はタイミングセーフで、origin の許可リストを使用し、レート制限は 120/min/token です。
- HTTP はセッションごとに使用し、アイドル状態のセッションは 30 min で削除します。
- Pass は値を公開せず、
{found: true}のみを返します。 - エージェントではデフォルトでドライランが有効です(CONSTITUTION.md §4)。
カバレッジの推移
| 日付 | Statements | Branches | Tests | 備考 |
|---|---|---|---|---|
| 2026年8月 | ~98% | ~95% | 953 | サブフェーズ 0+フェーズ 1 |
| 2026年7月 | 98.07% | 93.63% | 864 | ブランチの徹底調査 |
| 2026年6月 | 61.7% | — | 258 | ベースライン |
標準の集計方法:pnpm test 2>&1 | grep -E 'Test Files|Tests'。
ライセンス
AGPL-3.0 — Copyright 2026 Alejandro Domingo Agustí (Alexendros)。Proton AG との提携はありません。
依存関係については NOTICE.md を参照してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。