In-depth architectural comparison of the Proton Mail MCP and MCP Discord Bridge MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Proton Mail MCP
Communication · Local stdio
Quality: 59/100 (Good) | Auth: other
MCP Discord Bridge
Communication · Local stdio
Quality: 56/100 (Good) | Auth: API Key required
Verdict Summary: Choose Proton Mail MCP if you need specialized Communication tools running via a local process. Choose MCP Discord Bridge if your workspace requires Communication integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Proton Mail MCP when:
You need dedicated capabilities in the Communication domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: other (Free / Open Source).
You have access to required keys: PROTONMAIL_USERNAME, PROTONMAIL_PASSWORD.
Unofficial Proton Mail MCP server — send, read, search, and organize email over SMTP and IMAP (via Proton Mail Bridge). Bulk ops with dry-run previews, read-only mode, and Trash-by-default deletes. Not affiliated with Proton AG.
Discord MCP server with 46 tools for channels, messages, forums, webhooks, members, roles, threads, and moderation. Zero-install via npx -y mcp-discord-bridge. Also runs as a standalone bot with slash commands.
Category & Scope
Tools & Capabilities Breakdown
Proton Mail MCP Tools (32)
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.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Proton Mail MCP is categorized under Communication and uses a local stdio subprocess. In contrast, MCP Discord Bridge belongs to Communication using local stdio subprocess. Select Proton Mail MCP when you need capabilities focused on communication and MCP Discord Bridge when you require tools for communication.
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…
list_messages
List recent messages from a folder. Supports UID-based pagination.
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…
list_attachments
List attachment metadata (part numbers, filenames, types, sizes) for a message without downloading the body. Composes with `download_attachment` for bulk extraction. The reported size is the **decoded** file size (roughly what you get on save), **estimated** from the IMAP-encoded octet count — base…
download_attachment
Download an attachment by MIME part number. Use `list_attachments` or `read_message` first to see available parts. By default returns base64-encoded content inline. Bad part numbers produce an actionable error listing known parts.
search_messages
Search messages by various criteria. Date filters use IMAP semantics: `since` is inclusive, `before` is exclusive.
get_thread
Get all messages in a conversation thread by walking In-Reply-To and References headers. Returns messages sorted chronologically (oldest first).
+20 more tools listed on main page
MCP Discord Bridge Tools (44)
list_guilds
List all Discord servers the bot is in
list_channels
List all channels and categories in a Discord server
create_category
Create a new category in a Discord server
create_channel
Create a text or voice channel, optionally inside a category
delete_channel
Delete a channel or category by ID
move_channel
Move a channel into a different category
rename_channel
Rename a channel or category
get_channel_messages
Fetch recent messages from a text channel
send_message
Send a message to a Discord text channel
delete_message
Delete a message by channel and message ID
edit_message
Edit a bot message by channel and message ID
search_messages
Search the 100 most recent messages in a channel by keyword (Discord exposes no full-history search to bots)