MCP-ECC

https://github.com/karljsamuel/mcp-ecc

Documentação

mcp-ecc

mcp-ecc

Email · Calendário · Contatos — um servidor MCP para todas as suas contas

Um servidor Model Context Protocol (MCP) que permite que assistentes de IA leiam, escrevam e gerenciem seu email, calendário e contatos — em Google, Microsoft 365/Outlook, Zoho e qualquer conta IMAP/SMTP, CalDAV ou CardDAV — a partir de uma única interface.

License TypeScript Version Sponsor Node MCP Docker Multi-arch


mcp-ecc agrega seu email, calendário e contatos em ferramentas MCP padronizadas (mail.*, calendar.*, contacts.*, accounts.*) para que qualquer cliente MCP — Claude, Cursor e outros — possa trabalhar com todos eles de forma uniforme.

  • Um único consentimento OAuth por provedor de nuvem cobre email + calendário + contatos
  • Multiusuário — usuários gerenciam suas próprias contas, cada uma com uma chave de API MCP por usuário
  • Credenciais criptografadas em repouso (AES-256-GCM)
  • Auto-hospedável — um único contêiner servindo uma interface web de administração, API REST e o endpoint MCP em uma única porta

Início rápido

Docker

docker run -d --name mcp-ecc \
  -p 3001:3001 \
  -e MCP_ENCRYPTION_KEY="$(openssl rand -hex 32)" \
  karljsamuel/mcp-ecc:beta

Abra http://localhost:3001 → crie a conta de administrador → adicione as contas dos seus provedores.

CLI (npm)

npm install -g mcp-ecc
mcp-ecc            # interactive TUI — login, add accounts, manage everything
mcp-ecc start      # stdio MCP server for agent hosts

A partir do código-fonte

git clone https://github.com/karljsamuel/mcp-ecc.git
cd mcp-ecc
npm install
npm run build
node packages/cli/dist/bin.js --help

Conectando um cliente MCP

Aponte seu cliente para o endpoint HTTP com sua chave de API por usuário (exibida na interface web em Configurações):

{
  "mcpServers": {
    "mcp-ecc": {
      "type": "http",
      "url": "http://localhost:3001/mcp",
      "headers": { "Authorization": "Bearer <your-api-key>" }
    }
  }
}

Os agentes podem ler SKILL.md ou llms.txt para configuração guiada e automatizada.


Provedores

ProvedorEmailCalendárioContatosAutenticação
Google (Gmail, Calendar, People)OAuth 2.0
Microsoft 365 / Outlook (Graph)OAuth 2.0
Zoho (Mail, Calendar, Contacts)OAuth 2.0
IMAP / SMTP (qualquer servidor de email)Senha de aplicativo
CalDAV (Nextcloud, Radicale, BAIKAL)Senha
CardDAVSenha

Microsoft 365: as senhas de aplicativo estão sendo descontinuadas — use OAuth (Microsoft Graph) apenas.

Compatibilidade CalDAV/CardDAV: os provedores implementam WebDAV padrão (CalDAV RFC 4791, CardDAV RFC 6352) com autenticação Basic e devem funcionar com qualquer servidor compatível com os padrões. Testado com Radicale 3.7.8. Não testado com outros servidores; provedores somente OAuth (por exemplo, iCloud sem senha específica do aplicativo) não são suportados.

Notas de implantação: Google/Microsoft/Zoho/IMAP/SMTP/CalDAV/CardDAV rodam sob Node.js (CLI ou Docker). Cloudflare D1 pode ser usado como alternativa hospedada para o banco de dados SQLite local.


Ferramentas MCP

mail.listFolders · mail.listMessages · mail.getMessage · mail.sendMessage
mail.searchMessages · mail.moveMessage · mail.setFlags · mail.deleteMessage

calendar.listCalendars · calendar.listEvents · calendar.getEvent · calendar.freeBusy
calendar.createEvent · calendar.updateEvent · calendar.deleteEvent

contacts.list · contacts.get · contacts.create · contacts.update
contacts.delete · contacts.search

accounts.list · accounts.get · accounts.add · accounts.remove · accounts.sync

Referência completa com esquemas de entrada: docs/mcp-tools.md


Documentação


Contribuindo

Branches de funcionalidade a partir de dev; PRs contra dev. Execute npm run build para compilar todos os pacotes. Mantenha Changelog.md e docs/ em sincronia.

Suporte e contribuições

Se você achar o mcp-ecc útil, considere apoiar seu desenvolvimento:


Licença