Proton Suite Agent

Proton Suite Agent

An MCP server for managing Proton Mail, Pass, Drive, and Calendar through local IMAP/SMTP, pass-cli, and Proton Drive CLI, enabling AI agents to operate the mailbox, manage passwords, sync files, and classify emails.

Category
Visit Server

README

Proton Suite Agent

CI Quality CodeQL Coverage License: AGPL-3.0 Node

MCP server multi-producto para Proton Suite: Mail (Bridge IMAP/SMTP), Pass (pass-cli), Drive (CLI oficial) y Calendar (CalDAV stub). Un agente puede operar el buzón, gestionar contraseñas, sincronizar archivos y clasificar correo — todo sin salir de tu máquina.

Modo Descripción
stdio (default) Sin exponer nada a la red. Ideal para agentes IA locales.
streamable HTTP Bearer auth + origin allowlist. Para despliegue con Docker.

Quickstart

Prerrequisitos: Node ≥ 22, Proton Mail Bridge corriendo en local, pass + gpg para contraseñas.

1. Instalar y compilar

git clone https://github.com/Iniciativas-Alexendros/agent-protonsuite.git
cd agent-protonsuite
npm install && npm run build && npm run smoke

2. Configurar variables de entorno

export PROTON_BRIDGE_USER=you@proton.me
export PROTON_BRIDGE_PASS=your-bridge-password
export PROTON_MAIL_FROM=you@proton.me

3. Conectar tu cliente MCP

{
  "mcpServers": {
    "protonsuite": {
      "command": "npx",
      "args": ["-y", "@alexendros/protonsuite-agent", "protonsuite-mcp"],
      "env": {
        "MCP_TRANSPORT": "stdio",
        "PROTON_BRIDGE_USER": "you@proton.me",
        "PROTON_BRIDGE_PASS": "your-bridge-password",
        "PROTON_MAIL_FROM": "you@proton.me",
        "PROTON_BRIDGE_TLS_INSECURE": "true",
        "PROTON_PASS_ENABLED": "true",
      },
    },
  },
}

Seguridad: usa PROTON_PASS_BRIDGE_PATH=proton/bridge/password o el wrapper JIT en connectors/stdio-wrapper.sh.example para no dejar el bridge password en disco.

4. Organizar el buzón (dry-run)

AGENT_DRY_RUN=true npx -y @alexendros/protonsuite-agent organize

El agente analiza el inbox y presenta un plan de carpetas, etiquetas y alertas sin aplicar cambios. Desactiva AGENT_DRY_RUN para ejecutar.


Tools MCP

25 tools organizadas por producto. Todas aceptan response_format: "markdown" | "json".

Producto Tools Resumen
Mail 14 List, search, read, send, reply, forward, flag, move, delete, attachments
Pass 4 List, get (sin exponer valores), generate, health
Drive 8 Status, list, download, upload, share, audit, organize, format report
Calendar stub Registradas pero {available: false} hasta CalDAV vía Bridge
Suite 1 Estado unificado de todos los productos

Ver tabla completa en docs/agent-quickstart.md.


Agente

Goal Pipeline
setup Verifica Bridge (IMAP + SMTP), envía email de prueba
organize Clasifica inbox, propone carpetas/etiquetas, detecta amenazas
monitor Solo lectura — presenta alertas sin modificar
alert Inspecciona amenazas de seguridad
pass-audit Fortaleza de contraseñas, duplicados, rotación
suite-status Reporte unificado cross-producto
discover / check-imap Verificación rápida de conectividad

Drive CLI

# Instalar (opcional)
sudo wget -q 'https://proton.me/download/drive/cli/linux/proton-drive' \
  -O /usr/local/bin/proton-drive && sudo chmod +x /usr/local/bin/proton-drive
proton-drive auth login

Requiere DRIVE_ENABLED=true (default). Ver docs/drive-audit.md para configuración completa.


Despliegue

Docker

docker compose up -d

Ver docs/deployment-http-docker.md para auth, allowlist y healthcheck.

Instalador Ubuntu

bash scripts/install.sh

Ver scripts/install.sh para la instalación interactiva completa.


Documentación

Documento Para quién Qué cubre
docs/human-quickstart.md Usuarios no técnicos Instalación paso a paso, Bridge, Pass, primer uso
docs/agent-quickstart.md Agentes IA Tools, formatos de respuesta, ejemplos
docs/bridge-core.md Todos Bridge headless, puertos, vault, troubleshooting
docs/deployment-http-docker.md DevOps Docker, auth, allowlist, healthcheck
docs/local-stdio-secrets.md Operadores Wrapper stdio sin secretos en disco
docs/alerting.md Operadores Alertas de contenido, webhook, logs
docs/knowledge-base.md Todos Clasificación profesional y categorías
docs/drive-audit.md Operadores Drive CLI, persistencia token, auditoría
ARCHITECTURE.md Desarrolladores Capas internas, modelo de amenazas
SECURITY.md Auditores Controles activos y threat model
CONTRIBUTING.md Contribuidores Convenciones, PRs, tests

Conectores

Archivo Uso
connectors/stdio-npx.json Config stdio genérica para cualquier cliente MCP
connectors/stdio-wrapper.sh.example Wrapper seguro con resolución JIT de secretos
connectors/http-curl.sh.example Handshake HTTP con curl

Playbooks

playbooks/ — workflows predefinidos: onboarding, organize inbox, triage, fraud detection, pass audit, daily briefing, setup checklist.


Calidad

npm run typecheck   # TypeScript strict
npm test            # 745 tests (Vitest)
npm run coverage    # Coverage (v8 — 97.62% statements)
npm run build       # Compilación
npm run smoke       # Verificación stdio
npm run knip        # Unused deps/exports

Seguridad

  • Bearer timing-safe, origin allowlist, rate-limit 120/min/token.
  • Per-session HTTP transport, sesiones idle evicted a los 30 min.
  • Sin credenciales ni cuerpos de request en logs.
  • Pass nunca expone valores de secreto — solo {found: true}.
  • Dry-run por defecto en el agente.

Próximo módulo objetivo (branches <95%) — agrupado por dominio:

  • Agent: agent/organizer.ts (74.20%), agent/executor.ts (87.20%)
  • MCP surface: server/drive.ts (88.00%), server/mail.ts (89.60%)
  • Ecosystem: ecosystem/discovery.ts (86.80%)

Progreso de cobertura

Fecha Statements Branches Tests Archivos Hitos
Jul 2026 (Branch hunt) 98.07% 93.63% 864 43 diagnostics.ts 84%→96%, addresses.ts 90%→100%, pass.ts 87%→95% — Branch hunt top-3 cerrado
Jul 2026 (Ronda 3b) 93.72% — 745 42 server/drive.ts 89%→99%, http.ts +10 tests CORS/auth
Jul 2026 (Ronda 2) 92.68% — 692 41 server.ts 73%→96%, smtp.ts 79%→98%, alerts/index.ts 76%→98%
Jul 2026 (post-merge) 90.65% 86.46% 619 38 Repo renombrado, PRs #65 y #66 fusionados
Jul 2026 (previo) 90.67% — 640 42 server/agent 64%→100%, organizer 68%→98%, http 69%→81%, rules 71%→100%
Jun 2026 (base) 61.7% — 258 21 Reporte inicial

Conteo de tests canónico: npx vitest run 2>&1 | grep -E 'Test Files|Tests'. Los modos vitest run --coverage y vitest list pueden diferir ligeramente por su modelo de carga (transform/collect timing).

Licencia

AGPL-3.0 — Copyright 2026 Alejandro Domingo Agustí (Alexendros). Sin afiliación a Proton AG.

Ver NOTICE.md para dependencias y compatibilidad de licencias.

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured