mcpField
P
proton-mail-mcp

proton-mail-mcp

ローカル
github.com/Alexendrosコミュニケーション04 日前に更新

proton-mail-mcp について

proton-mail-mcp は、ローカルの Bridge と CLI を通じて Proton Mail、Pass、Drive を操作する MCP サーバーです。Calendar は現在スタブです。ローカル stdio と認証付き HTTP に対応し、書き込み、削除、認証情報の操作には承認が必要です。

主な機能

  1. 01メールの閲覧、検索、送信、整理
  2. 02値を公開せずに Pass の項目を管理
  3. 03Drive ファイルの一覧、転送、整理
  4. 04エージェントのワークフローは既定で dry-run
  5. 05変更操作はターミナルでの承認が必要
  6. 06stdio と認証付き HTTP に対応

活用シーン

  1. 01Proton Mail の受信トレイの確認と整理
  2. 02パスワードの強度と重複の監査
  3. 03Proton Drive ファイルの確認や整理
  4. 04HTTP プロキシ経由での MCP アクセス運用

MCP 対応

有効な製品に応じて、Proton Mail、Pass、Drive、Calendar の状態を扱うツールを MCP クライアントに提供します。stdio と streamable HTTP に対応し、変更操作にはターミナルでの承認が必要です。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"alexendros-proton-mail": {
"command": "npx",
"args": [
"-y",
"@alexendros/proton-mail-mcp"
],
"env": {
"PROTON_BRIDGE_HOST": "<PROTON_BRIDGE_HOST>",
"PROTON_IMAP_PORT": "<PROTON_IMAP_PORT>",
"PROTON_SMTP_PORT": "<PROTON_SMTP_PORT>",
"PROTON_USERNAME": "<PROTON_USERNAME>",
"PROTON_PASSWORD": "<PROTON_PASSWORD>"
}
}
}
}
起動コマンドnpx -y @alexendros/proton-mail-mcp
設定が必要な環境変数
PROTON_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 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npm@alexendros/proton-mail-mcp0.1.2

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Proton Suite Agent

このドキュメントの目的
  • 目標: リポジトリの状況、クイックスタート、正式なドキュメントへの案内を示します。
  • 構成: 基本情報 → 状況 → 読む順序のガイド → インストール、ツール、エージェント、品質。
  • 状況に応じて統合する内容: TypeScript/MCP スタック、Bridge の境界、デフォルトの dry-run、ファサードとしての Makefile。

開くタイミング:概要の把握、状況確認、関連ドキュメントへの案内。 承認日:2026年8月15日 対象読者:エージェント、経営陣、ユーザー 権限:参照 分類:必須 レビューまでの日数:14 リポジトリ内:はい 状態:有効 順序:1 目的:エントリーポイントとして、状況とクイックスタート、次に読むべき内容を示します。 改訂:運用 担当者:Alexendros レビュー日:2026年8月29日 役割:入口 パス:./README.md

CI CodeQL OpenSSF Scorecard Coverage License: AGPL-3.0 Node npm

📌

目的

参照用のエントリーポイントです。現在の状況、起動方法、次に開くべきドキュメントを説明します。譲れない原則は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)
CalendarBridge で CalDAV が実装されるまでスタブ(ADR-005)
正式なドキュメントサブフェーズ0完了

Proton Suite 向けのマルチプロダクト対応 MCP サーバー:Mail、Pass、Drive、Calendar(スタブ)。エージェントはメールボックスを操作し、パスワードを管理し、ファイルを同期します。すべてローカルで実行し、E2E コンテンツを外部へ流出させません。

モード説明
stdio(デフォルト)ネットワークを公開しません。ローカルの AI エージェントに最適です。
streamable HTTPBearer 認証 + オリジン許可リスト。Docker/リバースプロキシ向けです。

次に読むドキュメント

必要な情報開くドキュメントまだ読まない
譲れない原則CONSTITUTION.mdROADMAP 全体
作業順序とフェーズROADMAP.mdコード
エージェントとして実装する方法AGENTS.mdARCHITECTURE 全体
レイヤーとフローARCHITECTURE.mdコード
脅威モデルSECURITY.md—
コントリビュート/PRCONTRIBUTING.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"。

製品ツール概要
Mail14一覧表示、検索、読み取り、送信、返信、転送、フラグ設定、移動、削除、添付ファイル
Pass4+一覧表示、取得(値なし)、生成、ヘルスチェック、エージェント経由の監査
Drive8+状態、一覧表示、ダウンロード、アップロード、共有、監査、整理
CalendarstubBridge 経由の 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をご覧ください。


エージェント

目標パイプライン
setupBridge(IMAP + SMTP)を確認
organizeinbox、フォルダー/ラベル、脅威を分類
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.mdAI エージェント運用上の契約
docs/human-quickstart.mdユーザー手順に沿ったインストール
docs/agent-quickstart.mdAI エージェントツールと例
docs/bridge-core.mdオペレーターヘッドレス Bridge
docs/deployment-http-docker.mdDevOpsDocker、認証、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)。
カバレッジの推移
日付StatementsBranchesTests備考
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 を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。