Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI โ†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE โ†— (opens in a new tab)
  • llms.txt โ†— (opens in a new tab)
  • Catalog JSON โ†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub โ†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
ยฉ 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. ๐Ÿ’ฌ Communication
  3. Proton Mail MCP
Proton Mail MCP logo
Health: ActiveRecent health check succeeded.Last checked 9/11/2026, 2:31:31 PM

Proton Mail MCP

User RatingsBe the first to rate and review this MCP server!
View Repository6 GitHub StarsTotal stargazers on GitHub for the source repository (6 stars).Visit Website
proton-mailemailimapsmtpmcp

Unofficial MCP server for sending, reading, searching, and organizing Proton Mail through SMTP and Proton Mail Bridge.

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent โ€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
We couldnโ€™t automatically confirm this listing starts correctly

We ran the install command below but it didn't respond within our test window โ€” this can mean a slow first-time install rather than a real problem.

npx -y proton-mail-mcp

No response to initialize.

This is an experimental automated check and can have false negatives โ€” missing environment variables, a slow cold install, etc. It doesnโ€™t necessarily mean somethingโ€™s wrong. Last checked 1mo ago.

Manual Client & Custom JSON ConfigExpand JSON โ–พ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "sethbang-proton-mail-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "proton-mail-mcp"
      ]
    }
  }
}

๐Ÿ’ก Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Tool Schemas (32) Directory Badge Claim listing Alternatives๐Ÿ’ฌ More in Communication

Overview

This server connects AI assistants to Proton Mail using standard SMTP and a locally running Proton Mail Bridge for IMAP access. Use it to manage messages, folders, labels, threads, attachments, and inbox analytics from an MCP-compatible client. It includes read-only mode, dry-run bulk operations, and Trash-by-default deletion safeguards.

Use cases

โ€ขSend, reply to, and forward Proton Mail messages
โ€ขRead and search messages through IMAP
โ€ขMove, label, flag, and delete messages individually or in bulk
โ€ขManage folders and labels
โ€ขAnalyze inbox counts, folder statistics, and top senders

Key features

โ€ขSMTP email sending with threading headers and Markdown body support
โ€ขIMAP message reading and multi-criteria search
โ€ขAttachment sending, forwarding, downloading, and size limits
โ€ขBulk message operations with dry-run previews
โ€ขFolder, label, thread, and flag management
โ€ขRead-only mode and Trash-by-default deletion

Capabilities & Tool Schemas (32) ~1.9k tokensApproximate context cost of this serverโ€™s tool schemas (~4 chars/token), before any tool is called. Actual usage depends on your client and model.Self-reported Self-reportedParsed from the repository README, not verified against a live server โ€” may be incomplete or out of date.

Inspect callable tools, capabilities, and parameters exposed to AI agents by Proton Mail MCP.

send_email

Send an email using Proton Mail SMTP.

reply_email

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

reply_all_email

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

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.

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.

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 `count_messages` or `folder_stats`, which query the live mailbox. The output includeโ€ฆ

Documentation Overview

Proton Mail MCP Server

npm version License: MIT Glama score

A Model Context Protocol (MCP) server that gives AI assistants full access to your Proton Mail account -- send, read, search, and organize email over SMTP and IMAP.

โš ๏ธ Unofficial โ€” not affiliated with Proton. This is an independent, community-built project. It is not developed, endorsed, sponsored, or supported by Proton AG. "Proton", "Proton Mail", and "Proton Mail Bridge" are trademarks of Proton AG, used here only to describe interoperability. It talks to Proton Mail over the standard SMTP submission endpoint and the locally-run Proton Mail Bridge; no Proton private API is used. Use at your own risk.

Demo

Proton Mail MCP demo โ€” triaging an inbox from an MCP client

Features

  • Send, reply, and forward email via Proton Mail SMTP with threading headers; dedicated reply_all_email tool
  • Markdown bodies -- pass markdownBody to send_email / reply_email / reply_all_email / forward_email; rendered to HTML with a plain-text fallback
  • Read email via IMAP through Proton Mail Bridge
  • Attachments -- send files (base64), download to memory or to disk (saveTo + ALLOW_FILE_DOWNLOAD_DIR), forward a subset by part number
  • Search messages by sender, recipient, subject, body, date, flags, size, List-ID, attachment presence, attachment name (substring), and attachment MIME type
  • Organize -- move, delete, and flag/unflag messages individually or in bulk; bulk-update labels too
  • Bulk operations -- bulk_move, bulk_delete, bulk_update_flags, bulk_update_labels with dryRun preview and XOR uid/match input
  • Folder & label management -- create_folder, create_label, rename_folder, delete_folder (non-destructive on Proton); empty_folder (opt-in via ALLOW_EMPTY_FOLDER=true; not recommended)
  • Labeling -- update_message_labels adds and removes Proton labels on a message (additive โ€” message stays in its source folder)
  • Aggregations -- count_messages, folder_stats, top_senders (with excludeSelf + per-row direction) for inbox analytics
  • Thread mutations -- move_thread, delete_thread, flag_thread with optional cross-folder walk; get_thread dedupes by Message-ID across mailbox copies
  • Snippets -- optional includeSnippet on list_messages and search_messages for at-a-glance previews
  • List folders with message and unread counts
  • Honest accounting -- post-STORE FETCH verify on flags/labels surfaces silently-dropped operations as notApplied; sent-copy lookup retries SEARCH to defeat Proton's index lag; Reply-To rewrites are surfaced in the send response
  • Safety first -- delete moves to Trash by default (via special-use resolver), read-only mode via READONLY=true, dryRun on all bulk ops, MCP tool annotations for client-side confirmation prompts, path-traversal defense on filesystem-touching tools
  • Security hardened -- input validation, credential sanitization, rate limiting, attachment size limits
  • Works with any MCP-compatible client (Claude Desktop, Claude Code, Cursor, etc.)

Prerequisites

  • Node.js v24+
  • A Proton Mail account with an SMTP password (how to get one)
  • Proton Mail Bridge running locally (required for IMAP/read tools)

Quick Start

Add to your MCP client

Add the following to your client's MCP server configuration (Claude Desktop, Claude Code, Cursor, etc.):

config.json
{
  "mcpServers": {
    "protonmail": {
      "command": "npx",
      "args": ["-y", "proton-mail-mcp"],
      "env": {
        "PROTONMAIL_USERNAME": "your-email@protonmail.com",
        "PROTONMAIL_PASSWORD": "your-smtp-password"
      }
    }
  }
}

That's it โ€” npx will download and run the server automatically. See Configuration for all available environment variables.

Install from source

If you prefer to run from a local clone:

bash
git clone https://github.com/sethbang/proton-mail-mcp.git
cd proton-mail-mcp
npm install
npm run build

Then use this MCP config instead:

config.json
{
  "mcpServers": {
    "protonmail": {
      "command": "node",
      "args": ["/absolute/path/to/proton-mail-mcp/build/index.js"],
      "env": {
        "PROTONMAIL_USERNAME": "your-email@protonmail.com",
        "PROTONMAIL_PASSWORD": "your-smtp-password"
      }
    }
  }
}

Tools

Sending

All send tools return the Message-ID of the sent message in their response, which can be used to locate the message via IMAP search. All four send tools (send_email, reply_email, reply_all_email, forward_email) perform a best-effort lookup of the sent copy UID in the resolved \Sent folder (retried across ~30s to defeat Proton's indexing lag) and lead the response with a machine-parseable token prefix โ€” [sent-copy:verified] or [sent-copy:unverified], plus [reply-to:preserved|rewritten|stripped|unverified] when replyTo was requested. Agents can grep these tokens instead of text-matching prose. When the Sent-copy lookup converges, the response also includes a Sent copy UID: N in Sent clause; when it doesn't, the leading verb switches from "X sent successfully (Sent-copy verified)" to "X send accepted by SMTP (Sent-copy unverified within the lookup window)" โ€” the message did go out, but per-delivery verification couldn't be completed within the budget.

๐Ÿ›ก๏ธ HTML sanitization defaults to ON (since v1.0.0). Send / reply / forward / save_draft tools strip <script>, event handlers, inline style attributes, and remote <img> beacons via a conservative allowlist before delivery. Pass sanitizeHtml: false to preserve full-fidelity HTML for trusted-content workflows. The success response notes when sanitization ran.

โš ๏ธ Display-name spoofing partially defended. As of v1.0.0, fromName rejects values containing @ by default โ€” without this guard, a fromName like "Anthropic Security <security@anthropic.com>" reaches the wire as Anthropic Security security@anthropic.com after angle-bracket sanitization, which mail clients render as a forged sender. Pass allowAddressLikeFromName: true to override for legitimate product names. SMTP itself still prevents address-level spoofing (the envelope From: is bound to your authenticated identity), and arbitrary display names without @ are still allowed (e.g. "CEO of Acme") โ€” treat fromName like any other user-controllable string.

All send/reply/forward/save_draft tools accept an alternative markdownBody parameter (rendered to HTML via marked) โ€” mutually exclusive with body+isHtml. sanitizeHtml applies after Markdown rendering.

๐Ÿ›ก๏ธ Outbound preview + self-only lock. send_email, reply_email, reply_all_email, and forward_email accept dryRun: true โ€” it runs all validation and resolves the complete recipient set (To/CC/BCC, including the reply-all fan-out) and returns it without sending, leading with an [outbound:*] token and an explicit list of any external (non-self) recipients. Use it to confirm exactly who would receive the mail before a live call. For throwaway/QA accounts, set RESTRICT_OUTBOUND_TO_SELF=true (see Environment variables) to refuse any live send to a non-self recipient โ€” preventing an agent from fanning real mail out to external addresses embedded in seed data. (Preview is caller-opt-in; the env lock is enforced server-side with no per-call override.)

send_email

Send an email using Proton Mail SMTP.

ParameterRequiredDescription
toYesRecipient address(es), comma-separated
subjectYesSubject line
bodyConditionalPlain text or HTML content. Required unless markdownBody is provided
isHtmlNoWhether body is HTML (default: false)
markdownBodyNoMarkdown source โ€” rendered to HTML before sending. Mutually exclusive with body/isHtml
sanitizeHtmlNoStrip scripts, event handlers, inline styles, and remote <img> beacons via a conservative allowlist when the body is HTML. Default true as of v1.0.0. Pass false to preserve full-fidelity HTML. No-op on plain-text
ccNoCC recipient(s), comma-separated
bccNoBCC recipient(s), comma-separated (count in response dedupes against To/CC)
replyToNoReply-To address (Proton SMTP may rewrite values that don't match an authenticated identity; rewrites are surfaced in the response)
fromNameNoDisplay name for the From field. Rejects values containing @ by default (display-name-as-address spoofing defense โ€” see warning above). Pass allowAddressLikeFromName: true to override for legitimate cases (product names with @)
allowAddressLikeFromNameNoOpt-in escape valve for fromName containing @. Default false
attachmentsNoArray of {filename, content, contentType}. content is validated as base64 at the Zod boundary (catches malformed payloads before nodemailer silently emits garbage bytes); contentType is validated as a MIME type/subtype (catches malformed values before SMTP rejects the message)
dryRunNoValidate and resolve the full recipient set (To/CC/BCC) + subject + body without sending. Returns a preview leading with an [outbound:*] token and an explicit list of any external (non-self) recipients (default: false)

Read the full README โ†’View source on GitHub โ†’

Related MCP Servers

View all in Communication View all alternatives
  • Email MCP logoEmail MCP

    IMAP/SMTP email MCP server with 42 tools for reading, searching, sending, scheduling, and managing emails across multiple accounts. Supports IMAP IDLE push, AI triage, desktop notifications, and auto-detects providers like Gmail, Outlook, and iCloud.

    ๐Ÿ’ฌ Communication3 views
    Compare vs Email MCP โ†’
  • Mailwarden logoMailwarden

    Native Gmail MCP server with full mailbox control โ€” search, read, label, archive, trash, download attachments, and the feature no other Gmail server ships: snooze threads until a date. Every call hits the live Gmail API (no synced index that silently misses mail). Install with npx -y mailwarden.

    ๐Ÿ’ฌ Communication3 views
    Compare vs Mailwarden โ†’
  • Omnicord logoOmnicord

    Hands your AI an entire Discord server: 148 tools covering chat, moderation, automod, events, and full administration, up to building a complete community server from one paragraph. One-command guided setup, and every destructive action previews and waits for your confirmation.

    ๐Ÿ’ฌ Communication8 views
    Compare vs Omnicord โ†’
  • Signal MCP logoSignal MCP

    Full Signal messenger MCP server and CLI. Send/receive messages, manage groups and contacts, search history, handle attachments and reactions. Runs locally via signal-cli โ€” no third-party servers.

    ๐Ÿ’ฌ Communication3 views
    Compare vs Signal MCP โ†’

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks โ€” not a rating.

GitHub stars
6
Stargazers on the source repository.
Last commit
15d ago
Most recent push to the default branch.
Install check
Inconclusive
Didn't respond in our test window โ€” often a slow first install.
Tools exposed
32
Callable tools this server registers over MCP.
Directory activity
1 views
Config copies, upvotes, and views on AllMCPs.

Reviews

No reviews yet โ€” be the first to share how this listing worked for you.

Frequently Asked Questions about Proton Mail MCP

It uses Proton Mail's standard SMTP submission endpoint and a locally running Proton Mail Bridge for IMAP access.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewProton Mail MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/sethbang-proton-mail-mcp?style=directory)](https://allmcps.com/mcp/sethbang-proton-mail-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/sethbang-proton-mail-mcp"><img src="https://allmcps.com/api/badge/sethbang-proton-mail-mcp?style=directory" alt="Proton Mail MCP on AllMCPs" /></a>

Technical Specs & Signals

Category๐Ÿ’ฌCommunication
PricingFree
More technical detailsExpand โ–พ
TransportSTDIO
RuntimeNode.js
AuthOther
LicenseMIT
ClientsClaude Desktop, Cursor
Last updatedAug 27, 2026
4/5 checks healthy over the last 32d
Views1
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars6
GitHub Star CountTotal stargazers on GitHub representing community popularity (6 stars).
Last commit15d ago
Last Repository CommitThe most recent commit or push recorded for this server's GitHub repository.Last commit on Aug 27, 2026
59Quality signal: Good ยท 59/100How this signal is calculated โ–พ
Server availabilityNot measured

Not scored for repo-hosted servers โ€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools29/30
Adoption & activity5/15
Community engagement0/10

A guidance signal from public completeness & health data โ€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 26d ago via OSV.dev ยท proton-mail-mcp (npm)

โ˜… FeaturedAllMCPs Server logo

AllMCPs Server

The official MCP server for AllMCPs.com - submit and manage tools directly from your AI. The open directory for MCP servers. Connect Claude, Cursor, Windsurf, and AI agents to databases, tools, files, and APIs. Explore 10,000+ servers. AllMCPs is the premier, open directory for discovering, evaluating, and installing Model Context Protocol (MCP) servers to equip AI agents and LLMs with real-world superpowers.

Explore Server โ†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge โ€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it โ€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in ๐Ÿ’ฌ Communication โ†’Best MCP servers for Slack & Communication โ†’Alternatives to Proton Mail MCP โ†’Install in Claude DesktopInstall in CursorInstall in VS Code