Unofficial Proton Mail MCP — send, read, search & organize email over SMTP and IMAP
What it says
The record the registry holds
How you get it
There is no address to call. This one is a package you install and run yourself, wherever your assistant runs.
proton-mail-mcp · npm · 1.0.2
the recordCopied from the official MCP registry, exactly as it holds it.
{
"server": {
"$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
"name": "io.github.sethbang/proton-mail-mcp",
"description": "Unofficial Proton Mail MCP — send, read, search & organize email over SMTP and IMAP",
"title": "Proton Mail (unofficial)",
"repository": {
"url": "https://github.com/sethbang/proton-mail-mcp",
"source": "github"
},
"version": "1.0.2",
"websiteUrl": "https://sethbang.github.io/proton-mail-mcp/",
"packages": [
{
"registryType": "npm",
"registryBaseUrl": "https://registry.npmjs.org",
"identifier": "proton-mail-mcp",
"version": "1.0.2",
"runtimeHint": "npx",
"transport": {
"type": "stdio"
},
"environmentVariables": [
{
"description": "Your Proton Mail email address",
"isRequired": true,
"name": "PROTONMAIL_USERNAME"
},
{
"description": "Your Proton Mail SMTP password (not your login password; generate one in Proton settings)",
"isRequired": true,
"isSecret": true,
"name": "PROTONMAIL_PASSWORD"
},
{
"description": "SMTP host",
"default": "smtp.protonmail.ch",
"name": "PROTONMAIL_HOST"
},
{
"description": "SMTP port",
"format": "number",
"default": "587",
"name": "PROTONMAIL_PORT"
},
{
"description": "Use TLS for SMTP (true for port 465)",
"default": "false",
"name": "PROTONMAIL_SECURE"
},
{
"description": "Proton Mail Bridge IMAP host (required for read/search tools)",
"default": "127.0.0.1",
"name": "IMAP_HOST"
},
{
"description": "Proton Mail Bridge IMAP port",
"format": "number",
"default": "1143",
"name": "IMAP_PORT"
},
{
"description": "Use TLS for IMAP",
"default": "false",
"name": "IMAP_SECURE"
},
{
"description": "Proton Mail Bridge username (falls back to PROTONMAIL_USERNAME)",
"name": "IMAP_USERNAME"
},
{
"description": "Proton Mail Bridge password (falls back to PROTONMAIL_PASSWORD)",
"isSecret": true,
"name": "IMAP_PASSWORD"
},
{
"description": "Disable all mutating tools (send, move, delete, flags, labels, bulk ops, folder/label management)",
"default": "false",
"name": "READONLY"
},
{
"description": "Refuse live sends to any recipient other than PROTONMAIL_USERNAME (for throwaway/QA accounts)",
"default": "false",
"name": "RESTRICT_OUTBOUND_TO_SELF"
},
{
"description": "Allowlist directory enabling download_attachment.saveTo; when unset, attachments return as inline base64",
"name": "ALLOW_FILE_DOWNLOAD_DIR"
},
{
"description": "Register the empty_folder tool (not recommended)",
"default": "false",
"name": "ALLOW_EMPTY_FOLDER"
},
{
"description": "Enable verbose logging to stderr",
"default": "false",
"name": "DEBUG"
}
]
}
]
},
"_meta": {
"io.modelcontextprotocol.registry/official": {
"status": "active",
"statusChangedAt": "2026-05-30T13:42:09.382637Z",
"publishedAt": "2026-05-30T13:42:09.382637Z",
"updatedAt": "2026-05-30T13:42:09.382637Z",
"isLatest": true
}
}
}
Make it installable
Draft an Agent Plugin from this
An MCP server is raw capability: some tools, wired to something. An Agent Plugin is the packaging that says what job it does, what it leaves behind and where it stops. The prompt below carries this record and asks for the packaging; your own assistant writes it, and nothing here is sent anywhere.
What this is
MCP server
application/mcp-server-record+jsonlocal · you run it yourselfversion 1.0.2last seen 2026-08-23
These are the publisher's own words, filed by them with the official MCP registry and mirrored here. This catalog did not read them from the publisher and has not run, called or installed anything.