Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
Unofficial self-hosted MCP connector for Proton Mail Bridge and SimpleLogin.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
PROTON_BRIDGE_USERNAME, PROTON_BRIDGE_PASSWORD, PROTON_BRIDGE_EMAIL, SIMPLELOGIN_API_KEYValues marked secret are keys to your account. Never share them or paste them into a chat.
You need
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"proton-workflow-connector": {
"command": "uvx",
"args": [
"proton-workflow-connector"
],
"env": {
"PROTON_BRIDGE_USERNAME": "your-value",
"PROTON_BRIDGE_PASSWORD": "your-value",
"PROTON_BRIDGE_EMAIL": "your-value",
"SIMPLELOGIN_API_KEY": "your-value"
}
}
}
}Run this in your terminal
claude mcp add proton-workflow-connector --env PROTON_BRIDGE_USERNAME=your-value --env PROTON_BRIDGE_PASSWORD=your-value --env PROTON_BRIDGE_EMAIL=your-value --env SIMPLELOGIN_API_KEY=your-value -- uvx proton-workflow-connectorFill in the empty values before running it.
Paste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"proton-workflow-connector": {
"command": "uvx",
"args": [
"proton-workflow-connector"
],
"env": {
"PROTON_BRIDGE_USERNAME": "your-value",
"PROTON_BRIDGE_PASSWORD": "your-value",
"PROTON_BRIDGE_EMAIL": "your-value",
"SIMPLELOGIN_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"proton-workflow-connector": {
"type": "stdio",
"command": "uvx",
"args": [
"proton-workflow-connector"
],
"env": {
"PROTON_BRIDGE_USERNAME": "your-value",
"PROTON_BRIDGE_PASSWORD": "your-value",
"PROTON_BRIDGE_EMAIL": "your-value",
"SIMPLELOGIN_API_KEY": "your-value"
}
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 8, 2026
The registry name was verified with the GitHub account NtrpyDev, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
You need to fill in: PROTON_BRIDGE_USERNAME, PROTON_BRIDGE_PASSWORD, PROTON_BRIDGE_EMAIL, SIMPLELOGIN_API_KEY
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.3.0) reached the registry 4 months ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need Python (uv) on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, Brontide agent arena
Servers in the same category from other makers, sorted by stars.
Reading a card:↓ Downloads per weeki★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the registryi
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
THE MECH ARENA BUILT FOR AI AGENTS. HUMANS WELCOME. Pilot mech duels over MCP, free, no sign-in.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
Proton Workflow Connector (PWC) is a self-hosted MCP connector for reading, sending, organizing, and automating Proton Mail through Proton Mail Bridge. It works with any MCP client or local agent runtime that can launch a stdio server or call a Streamable HTTP MCP endpoint. SimpleLogin support is optional.
This is an unofficial project. It is not affiliated with, endorsed by, or sponsored by Proton AG. The connector uses Bridge-generated IMAP/SMTP credentials. It does not accept Proton account passwords or store Proton login sessions.
Quick start · Example workflows · Capabilities · Automations · Security · Documentation · Buy Me a Coffee
Use one local server for the mail work agents usually have to piece together:
dry_run, sanitize outbound HTML by default, bound bulk operations, and allow only configured sender addresses.The server exposes 68 tools in total. See the complete tool reference.
PWC is an MCP server. Your client starts it over stdio or connects to it over Streamable HTTP.
The connector talks to Proton Mail Bridge over local IMAP/SMTP. Bridge must be installed, signed in, and running on the same machine as the connector. One connector process serves one Bridge account.
SimpleLogin is optional. If SIMPLELOGIN_API_KEY is set, PWC adds alias, contact, mailbox, and new-alias polling tools. If it is unset, the Proton Mail tools still work.
For automation, run proton-workflow-watch or call the polling tools from your MCP client. Watcher output can go to a webhook, a JSONL file, or a command.
git clone https://github.com/NtrpyDev/proton-workflow-connector.git
cd proton-workflow-connector python -m venv .venv source .venv/bin/activate python -m pip install .
On Windows PowerShell, activate the environment with .venv\Scripts\Activate.ps1.
Keep the environment file outside the repository:
mkdir -p ~/.config/proton-workflow-connector
cp .env.example ~/.config/proton-workflow-connector/env chmod 600 ~/.config/proton-workflow-connector/env
Edit the copied file with the connection details shown in Proton Mail Bridge. Set PROTON_BRIDGE_EMAIL to the default sender and list every permitted sender address in PROTON_BRIDGE_SENDER_ADDRESSES.
proton-workflow-connector --transport stdio \
--env-file ~/.config/proton-workflow-connector/env
Any MCP client or local agent runtime can use PWC as long as it supports stdio or Streamable HTTP:
proton-workflow-connector --transport stdio --env-file ...--transport streamable-http and point the client at /mcpClaude Code stdio example:
claude mcp add --transport stdio --scope user proton-workflow \
-- "$PWD/.venv/bin/proton-workflow-connector" --transport stdio \ --env-file ~/.config/proton-workflow-connector/env
Codex stdio example:
[mcp_servers.proton_workflow]
command = "/absolute/path/to/repo/.venv/bin/proton-workflow-connector" args = [ "--transport", "stdio", "--env-file", "/absolute/path/to/private/proton-workflow-connector-env" ] default_tools_approval_mode = "prompt" startup_timeout_sec = 20 tool_timeout_sec = 120
Run server_status after connecting. It checks IMAP, SMTP, SimpleLogin, OAuth configuration, and the server version without returning secrets. Then run list_folders; Bridge folder names vary by account and version.
See MCP client setup for generic client configuration, localhost HTTP, hosted Streamable HTTP, Codex, Claude Code, and the plugin wrapper.
Once connected, ask your MCP client to:
billing@vendor.example using the invoices cursor."The connector returns structured data to the MCP client. The client decides how to present it and when to request approval for actions.
| Area | Included operations |
|---|---|
| Search and reading | Search one folder or all selectable folders, read messages and threads, inspect headers, and download attachments |
| Sending and drafts | Send, reply, reply-all, forward, create and update drafts, use allowed alternate senders, and attach files |
| Organization | Create and manage folders, apply Proton labels, change flags, archive, move, copy, restore, and manage Spam or Trash |
| Bounded bulk actions | Preview, mark, star, move, copy, archive, trash, restore, or permanently delete explicit UID lists |
| Automations | Poll persistent cursors or push new-message and new-alias events to a webhook, JSONL file, or command |
| SimpleLogin | Inspect account data and manage aliases, contacts, and mailboxes with an optional API key |
| Deployment | Local stdio, localhost Streamable HTTP, or OAuth/OIDC-protected hosted HTTP |
Proton Contacts are not included because Proton Mail Bridge does not expose them.
The background watcher polls for new mail or newly created SimpleLogin aliases and emits one event per new item:
proton-workflow-watch \
--env-file ~/.config/proton-workflow-connector/env \ --folder INBOX \ --webhook-url https://example.com/hooks/proton \ --interval 60
Key behavior:
UIDVALIDITY changes.--dry-run shows which events and rule actions would fire without delivering, acting, or advancing cursors.Read Triggers and webhooks for event schemas, filters, delivery guarantees, signature verification, rules, and systemd examples.
This connector processes private mail. Its defaults and boundaries are intentionally explicit:
confirm=true after explicit user intent.dry_run=true previews.content_trust: "untrusted", and outbound HTML is sanitized unless trusted_html=true.PROTON_BRIDGE_EMAIL or an address in PROTON_BRIDGE_SENDER_ADDRESSES.Read SECURITY.md before using real mail and Hosted HTTP setup before exposing the connector beyond localhost.
All Mail is a virtual read-only Bridge mailbox; start move and permanent-delete operations from a writable folder.| Guide | Use it for |
|---|---|
| Setup | Bridge configuration, private environment files, folder names, and network modes |
| Tool reference | All 68 MCP tools, arguments, safety limits, and boundaries |
| Client setup | Generic MCP clients, local agents, Codex, Claude Code, plugins, and Streamable HTTP |
| Triggers and webhooks | Watcher rules, payloads, delivery behavior, and signature verification |
| Hosted HTTP | OAuth/OIDC, HTTPS, Host/Origin validation, scopes, audit logs, and systemd |
| Integration tests | Live Bridge and SimpleLogin verification |
Official upstream references:
Install the development dependencies and run the local checks:
python -m pip install -e ".[dev]"
ruff check . ruff format --check . pytest python -m compileall -q src pip-audit gitleaks detect --redact --config .gitleaks.toml
Tests use synthetic data and do not require access to a real mailbox. Live checks are documented separately in Integration tests.
See CONTRIBUTING.md for contribution and privacy requirements. Report security issues privately as described in SECURITY.md.
MIT. See LICENSE.