mcp-zap

mcp-zap

MCP server for sending and receiving WhatsApp messages through Evolution API, enabling management of instances, messages, and chats directly from Claude Code.

Category
Visit Server

README

Evolution API MCP

MCP server para enviar e receber mensagens no WhatsApp direto do Claude Code, usando Evolution API (open-source, self-hosted).

O que faz

  • Criar e gerenciar instancias WhatsApp
  • Enviar mensagens de texto, midia, audio, localizacao, contatos, enquetes, stickers, botoes e listas
  • Ler conversas e mensagens recebidas
  • Reagir a mensagens, arquivar chats, marcar como lido

Opcao A — Railway (recomendado, sem Docker)

Deploy em nuvem em 5 minutos. Nao precisa de Docker nem servidor local.

1. Criar conta no Railway

Acesse railway.com e crie uma conta gratuita.

2. Deploy do template Evolution API

  1. No Railway, clique em New Project
  2. Clique em Deploy a template
  3. Pesquise Evolution API (o template com mais de 2000 projetos — tem Postgres + Redis inclusos)
  4. Clique em Deploy
  5. Aguarde ~2 minutos ate todos os servicos ficarem Active

3. Gerar dominio publico

  1. Clique no servico Evolution API
  2. Va em SettingsNetworkingGenerate Domain
  3. Anote a URL gerada (ex: evolution-api-production-xxxx.up.railway.app)

4. Configurar API Key

No servico Evolution API, va em Variables e adicione:

Variavel Valor
AUTHENTICATION_TYPE apikey
AUTHENTICATION_API_KEY Uma chave forte (ex: gere com openssl rand -hex 16)

Clique em Deploy para aplicar.

5. Criar instancia e escanear QR

# Criar instancia
curl -X POST "https://SUA-URL.up.railway.app/instance/create" \
  -H "apikey: SUA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"instanceName":"meuwhats","integration":"WHATSAPP-BAILEYS","qrcode":true}'

# Pegar QR code (rode e escaneie com o WhatsApp)
curl "https://SUA-URL.up.railway.app/instance/connect/meuwhats" \
  -H "apikey: SUA_API_KEY"

O campo base64 da resposta e a imagem do QR. Salve e abra:

# Salvar QR como imagem e abrir
curl "https://SUA-URL.up.railway.app/instance/connect/meuwhats" \
  -H "apikey: SUA_API_KEY" | python3 -c "
import json,sys,base64
d=json.load(sys.stdin)
b64=d['base64'].replace('data:image/png;base64,','')
open('qr.png','wb').write(base64.b64decode(b64))
print('QR salvo em qr.png')
"
open qr.png   # macOS
# start qr.png  # Windows

Escaneie com seu WhatsApp: Configuracoes > Aparelhos conectados > Conectar dispositivo

6. Instalar o MCP server

git clone https://github.com/SEU_USUARIO/mcp-zap.git
cd mcp-zap
uv venv
uv pip install -e .

7. Registrar no Claude Code

Edite ~/.claude.json e adicione dentro de mcpServers:

{
  "mcpServers": {
    "evolution-api": {
      "type": "stdio",
      "command": "evolution-api-mcp",
      "env": {
        "EVOLUTION_API_URL": "https://SUA-URL.up.railway.app",
        "EVOLUTION_API_KEY": "SUA_API_KEY",
        "EVOLUTION_INSTANCE": "meuwhats"
      }
    }
  }
}

Windows: use o caminho completo do .exe: "command": "C:/Users/SEU_USUARIO/mcp-zap/.venv/Scripts/evolution-api-mcp.exe"

Reabra o Claude Code e pronto.


Opcao B — Docker local

Para quem prefere rodar tudo na propria maquina.

Pre-requisitos

1. Subir a Evolution API

git clone https://github.com/SEU_USUARIO/mcp-zap.git
cd mcp-zap
docker compose up -d

Aguarde ~15 segundos e teste:

curl http://localhost:8080/
# {"status":200,"message":"Welcome to the Evolution API, it is working!"}

2. Conectar seu WhatsApp

  1. Acesse http://localhost:8080/manager/
  2. Use a API Key: evo_mcp_2024
  3. Crie uma instancia (ex: meuwhats)
  4. Clique em Gerar QR Code e escaneie

3. Instalar e registrar o MCP

uv venv
uv pip install -e .

Edite ~/.claude.json:

{
  "mcpServers": {
    "evolution-api": {
      "type": "stdio",
      "command": "evolution-api-mcp",
      "env": {
        "EVOLUTION_API_URL": "http://localhost:8080",
        "EVOLUTION_API_KEY": "evo_mcp_2024",
        "EVOLUTION_INSTANCE": "meuwhats"
      }
    }
  }
}

Windows: use o caminho completo: C:/Users/SEU_USUARIO/mcp-zap/.venv/Scripts/evolution-api-mcp.exe


Usando

Apos configurar, reabra o Claude Code:

> envia uma mensagem pro 5511999999999 dizendo oi
> mostra minhas conversas recentes
> qual foi a ultima mensagem do fulano?

Configuracao

Variavel Descricao Exemplo
EVOLUTION_API_URL URL da Evolution API https://xxxx.up.railway.app ou http://localhost:8080
EVOLUTION_API_KEY API key de autenticacao 96CF28F9329F-44A3-80DB-5190D7B27185
EVOLUTION_INSTANCE Nome da instancia criada meuwhats

Estrutura

mcp-zap/
├── docker-compose.yml          # Evolution API + PostgreSQL (opcao local)
├── pyproject.toml              # Dependencias Python
└── src/evolution_api_mcp/
    ├── server.py               # MCP server (FastMCP + CodeMode)
    ├── client.py               # HTTP client async
    └── tools/
        ├── instance.py         # Criar/conectar/deletar instancias
        ├── messages.py         # Enviar texto, midia, audio, etc.
        └── chat.py             # Listar chats, ler mensagens

Tools disponiveis

Instance

  • create_instance — Criar instancia WhatsApp
  • connect_instance — Conectar e gerar QR code
  • fetch_instances — Listar instancias
  • connection_state — Verificar estado da conexao
  • logout_instance — Desconectar WhatsApp
  • restart_instance — Reiniciar instancia
  • delete_instance — Deletar instancia

Messages

  • send_text — Enviar texto
  • send_media — Enviar imagem, video ou documento
  • send_audio — Enviar audio/nota de voz
  • send_location — Enviar localizacao
  • send_contact — Enviar cartao de contato
  • send_reaction — Reagir com emoji
  • send_poll — Enviar enquete
  • send_buttons — Enviar botoes interativos
  • send_list — Enviar lista interativa
  • send_sticker — Enviar sticker

Chat

  • find_chats — Listar conversas
  • find_messages — Ler mensagens de um chat
  • archive_chat — Arquivar/desarquivar chat
  • mark_message_as_read — Marcar como lido

Licenca

MIT

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