Proton Mail MCP logo

Proton Mail MCP

未申請

作者: sethbang

Unofficial MCP server for Proton Mail (not affiliated with Proton AG) — send, read, search & organize email over SMTP/IMAP

emailemail-mcpemail-mcp-serverimapmcpmcp-servermodel-context-protocolnodemailerprotonproton-mail

サーバーをセットアップ

01 / クライアントを選択

02 / 接続前の準備

認証方法は未指定です。接続前にプロジェクトの手順を確認してください。

プロジェクトが必要とする実行環境をインストールし、クライアントから利用できるようにしてください。

プロジェクトの手順

手順に記載された名前をカンマで区切って入力してください。秘密の値は入力しないでください。

03 / 設定を追加

出典:公開インストール手順から生成

claude mcp add --transport stdio 'proton-mail-mcp' -- 'npx' '-y' 'proton-mail-mcp'

プレースホルダーを置き換えてからターミナルで実行してください。

04 / クライアントで確認

クライアントの MCP 設定で接続とツール一覧を確認してください。設定のコピーだけでは接続成功は確認できません。

Search & Webの他のサーバー

ディレクトリ全体を見る

未申請リスティング

このMCPサーバーはあなたのものですか?

このリスティングは公開情報から自動的にインデックスされました。申請することで、ページの編集、互換性の設定、成長ツールのアンロックができます。2分以内に完了します。

このサーバーを申請する

セキュリティプロファイル

申請済みおよび認証済みのサーバーは毎週の静的スキャンを受け、コードが到達できる範囲(外部サービス、環境変数、シェルコマンド、エージェント設定フォルダ)と既知のアドバイザリを持つ依存関係が表示されます。このリスティングを申請すると利用できます。 セキュリティプロファイルの仕組み

32 件中 32 件

ドキュメントに記載されたツール (32)

プロジェクトのドキュメントに基づきます。サーバーのハンドシェイクは、各ツールの説明や動作を検証するものではありません。

bulk_delete

Delete many messages in a single IMAP operation. Same XOR uids/match input and dryRun support as bulkmove. Defaults to soft-delete via the resolved Trash path. A subject/body match appends a staleness warning — Proton's content SEARCH lags ~30–60s, so recent mail can be silently missed; prefer from:

bulk_move

Move many messages in a single IMAP operation. Accepts either an explicit uids array or match criteria (XOR, not both). Supports dryRun: true to preview which UIDs would be affected without making changes — match-based dry-runs run the SEARCH results through a FETCH-based existence pass so the previ

bulk_update_flags

Add or remove flags on many messages in a single IMAP operation. Same XOR uids/match input and dryRun support. Reports notApplied: string[] for flags the server silently dropped across every affected UID (e.g. Proton's user-keyword drop).

bulk_update_labels

Add or remove Proton labels on many messages in a single IMAP operation. Same XOR uids/match input and dryRun support as the other bulk tools. Adds are batched (one COPY of the joined UID range per label); removes walk each label mailbox by Message-ID. Reports notApplied: string[] for labels with no

count_messages

Return a count of messages matching optional criteria, backed by IMAP SEARCH. No envelope fetch — just a number.

create_folder

Create a new mailbox folder. Idempotent — succeeds silently if the folder already exists. Restricted to the Folders/ namespace (e.g. Folders/Receipts); root-level paths are rejected with an actionable error. Labels/... paths are rejected with a redirect to the dedicated createlabel tool. . and .. pa

create_label

Create a new Proton label. Pass the bare label name; the Labels/ prefix is added internally. Idempotent. The response returns the full Labels/X path — copy that into updatemessagelabels.labelsToAdd (which requires the full path, not the bare name).

delete_folder

Delete a folder or label container. Restricted to the Folders/ and Labels/ namespaces so system mailboxes (INBOX, Sent, Trash, etc.) cannot be removed.

delete_message

Delete a message. By default moves to Trash for safety (resolved via special-use annotation); set permanent=true to permanently expunge. Returns the new UID in Trash when available. Soft-deleting a message that is already in Trash is a no-op on the server; the tool detects this and returns an action

delete_thread

Delete all messages in a thread. Per-folder by default; set acrossFolders: true for cross-folder walk.

download_attachment

Download an attachment by MIME part number. Use listattachments or readmessage first to see available parts. By default returns base64-encoded content inline. Bad part numbers produce an actionable error listing known parts.

empty_folder

Permanently empty a folder via atomic UID EXPUNGE (client.messageDelete). Requires confirm: true. By default restricted to Trash and Junk to prevent accidents; set allowAnyFolder: true to target any folder. Pass dryRun: true to preview the count that would be deleted without touching any mail (no co

flag_thread

Add or remove flags on all messages in a thread. Per-folder by default; set acrossFolders: true for cross-folder walk.

folder_stats

Return total/unread counts plus scanned-envelope aggregations: oldest message date, newest message date, and total message bytes. Response includes scanned and truncated fields for transparency.

forward_email

Forward a message to new recipients. Original attachments are carried forward by default. Unlike reply, a forward does not set In-Reply-To/References — it starts its own conversation and leaves the original message's \Answered flag untouched.

get_thread

Get all messages in a conversation thread by walking In-Reply-To and References headers. Returns messages sorted chronologically (oldest first).

list_attachments

List attachment metadata (part numbers, filenames, types, sizes) for a message without downloading the body. Composes with downloadattachment for bulk extraction. The reported size is the decoded file size (roughly what you get on save), estimated from the IMAP-encoded octet count — base64 parts are

list_folders

List all mailbox folders with message and unread counts. No parameters. Counts come from a cached IMAP STATUS that Proton Bridge can serve stale — for an exact count (e.g. before deleting or emptying a folder), use countmessages or folderstats, which query the live mailbox. The output includes a foo

list_messages

List recent messages from a folder. Supports UID-based pagination.

mark_all_read

Mark all unread messages in a folder as read. Optionally limit to messages older than a given date. Pass dryRun: true to preview the affected count without flipping any flags.

move_message

Move a message to a different folder. Returns the new UID in the destination folder when available (requires UIDPLUS server support).

move_thread

Move all messages in a thread to a destination folder. Identified by Message-ID. Per-folder by default; set acrossFolders: true to walk INBOX + Sent + All Mail. When the walk surfaces a thread member only via All Mail (e.g. the message actually lives in Folders/Archive), the server expands the searc

read_message

Read a specific message by UID. Returns full headers, body, and attachment metadata. Prefers plain text; strips HTML tags from HTML-only messages. Body-part selection skips parts marked Content-Disposition: attachment, so a text/plain attachment sitting next to an HTML body is never returned as the

rename_folder

Rename an existing folder or label. Restricted to the Folders/ and Labels/ namespaces on both from and to so system mailboxes (INBOX, Sent, Trash, etc.) can't be renamed — without this guard, renamefolder(from: "INBOX", to: ...) would succeed against Proton Mail Bridge and relocate INBOX's contents.

reply_all_email

Reply to all original recipients (sender + TO + CC), excluding the authenticated user. Same threading + quoting semantics as replyemail. Use this instead of replyemail + replyAll: true for clarity. Self-exclusion covers the whole recipient set including the primary To: replying-all to a message you

reply_email

Reply to a message with proper threading headers (In-Reply-To, References). Includes the quoted original message with attribution by default.

save_draft

Save an email as a draft without sending it. The draft is placed in the user's \Drafts special-use folder (resolved at runtime; falls back to literal Drafts if no annotation). Returns the draft UID when available.

search_messages

Search messages by various criteria. Date filters use IMAP semantics: since is inclusive, before is exclusive.

send_email

Send an email using Proton Mail SMTP.

top_senders

Return a sender frequency table over a configurable date range, sorted by message count descending. Collapses display-name variants of the same address. Each row carries a direction: "self""received" tag so callers scanning All Mail (which spans Sent) can tell outbound from inbound.

update_message_flags

Add or remove flags on a message. RFC 3501 system flags: \Seen (read), \Flagged (starred), \Answered, \Draft, \Deleted, \Recent. User-defined keywords without a backslash prefix are also accepted (alphanumeric + underscore, e.g. Important, CustomTag). Unknown \-prefixed names are rejected.

update_message_labels

Add or remove Proton labels on a message. Labels live under the Labels/ namespace and are additive — the message stays in its source folder while gaining or losing label tags.

ツールの変更履歴

同じ設定での完全なチェック同士を比較します。ツールの列挙のみで実行はしていません。入力スキーマの変更は測定していません。

完全なツールチェックはまだありません。