proton-bridge-mcp (Python wrapper)
A pip/uvx-installable wrapper around proton-bridge-mcp, an MCP server for reading and searching Proton Mail via Proton Mail Bridge.
This package contains no Python implementation. It's a thin shim that execs into the real Node.js implementation via npx. It exists so Python-oriented MCP tooling (uvx, pipx, pip install) can install and run it without needing to know it's Node underneath.
Unofficial, community project. Not affiliated with or endorsed by Proton AG.
Requirements
- Node.js 18+ must be installed and on
PATH(specificallynpx). This wrapper cannot function without it — there is no pure-Python fallback. - A Proton Mail plan that supports Bridge, with Proton Mail Bridge running
Install
pip install proton-bridge-mcp
# or
uvx proton-bridge-mcp
Setup
Run the interactive setup wizard once (fetches and pins Bridge's TLS certificate, verifies login, writes credentials to ~/.config/proton-bridge-mcp/, chmod 600):
proton-bridge-mcp-setup
Register with an MCP client
Claude Code:
claude mcp add proton-mail -s user -- proton-bridge-mcp
Claude Desktop / other MCP clients:
{
"mcpServers": {
"proton-mail": {
"command": "proton-bridge-mcp"
}
}
}
Codex CLI:
Tested end-to-end against Codex CLI 0.146.0 via uvx, with a real Bridge connection and real tool calls. MCP support is behind an under-development feature flag as of 0.146.0 — enable it once:
codex features enable mcp_2026_07_28
Then register the server:
codex mcp add proton-mail -- uvx proton-bridge-mcp
uvx resolves and caches per exact version, so (unlike a bare npx invocation of the underlying npm package) it isn't at risk of silently picking up a stale global install — no version pinning needed here. All four tools are read-only IMAP calls and carry readOnlyHint annotations, so they run in both interactive codex and non-interactive codex exec without an approval prompt.
Note this wrapper always execs into whatever npm tag is latest for the underlying @alpharomercoma/proton-bridge-mcp package — see that repo's README for the one caveat that does apply if you've separately run npm install -g on the same machine.
Why does this exist separately from the npm package?
The actual server (list_mailboxes, list_messages, search_messages, get_message tools; TLS certificate pinning instead of disabled verification; the setup wizard) lives entirely in the Node.js project: https://github.com/alpharomercoma/proton-bridge-mcp. That's the canonical implementation, source of truth for behavior, and where issues/PRs about actual functionality belong. This repo only exists to make it reachable from pip/uvx workflows.
License
MIT — see LICENSE.
Metadata
Release files for proton-bridge-mcp 1.0.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | |
|---|---|---|---|---|
| proton_bridge_mcp-1.0.1.tar.gz | 3.6 kB | Without provenance | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| proton_bridge_mcp-1.0.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 8.5 kB
Release files / proton_bridge_mcp-1.0.1.tar.gz
| Download URL | proton_bridge_mcp-1.0.1.tar.gz |
|---|---|
| Size | 3.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
3f88ce356976110853dcaeec3146bbafe3dabf58d5e41ed7fa2c83f347590725
|
|
BLAKE2b-256 checksum How to use checksums |
b1adcc5f19e2e04a20190ec406b3b0f8daf3e712397e92f5ad1bf611542a7f86
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Release files / proton_bridge_mcp-1.0.1-py3-none-any.whl
| Download URL | proton_bridge_mcp-1.0.1-py3-none-any.whl |
|---|---|
| Size | 4.9 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6e62fe82a4573d618431674cb929407988c231a07ce803e87e7b2f663d18acd3
|
|
BLAKE2b-256 checksum How to use checksums |
a541a5b2aa7d89ad4eba37e9d9625f299238d1d1c846d03fef974a3cd1f6df7e
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.9.6
|
Security for proton-bridge-mcp 1.0.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.