@iproute/wppapi-mcp
v1.1.0
Published
Servidor MCP que conecta agentes de IA (Claude Code, Claude Desktop, Hermes, OpenClaw...) a um número de WhatsApp via WPPAPI, com human-in-the-loop (ask_user)
Maintainers
Readme
@iproute/wppapi-mcp
Servidor MCP que conecta agentes de IA (Claude Code, Claude Desktop, Hermes, OpenClaw ou qualquer cliente MCP) a um número de WhatsApp através da WPPAPI — incluindo human-in-the-loop: o agente te chama no WhatsApp (ask_user) e aguarda sua resposta antes de continuar.
Requer Node.js 18+.
# stdio (Claude Code / Desktop / OpenClaw local)
claude mcp add whatsapp \
--env WPPAPI_BASE_URL=https://api.wpp-api.com \
--env WPPAPI_INSTANCE_ID=sua-instancia \
--env WPPAPI_TOKEN=sua-api-key \
--env WPPAPI_OWNER_PHONE=5511999999999 \
-- npx -y @iproute/wppapi-mcp
# Streamable HTTP (agentes remotos) — endpoint em /mcp
# (proteja com WPPAPI_MCP_AUTH_TOKEN: clientes enviam Authorization: Bearer)
WPPAPI_MCP_AUTH_TOKEN=token-longo WPPAPI_INSTANCE_ID=... WPPAPI_TOKEN=... npx -y @iproute/wppapi-mcp --http 3020
# Listener: suas mensagens no WhatsApp viram tarefas do Claude Code
# (sessão contínua com --resume; comandos /nova, /ping, /parar)
WPPAPI_LISTEN_CWD=/seu/projeto WPPAPI_INSTANCE_ID=... WPPAPI_TOKEN=... WPPAPI_OWNER_PHONE=... npx -y @iproute/wppapi-mcp --listenPara acionar um Dot por comandos ou grupos pessoais, use o piloto hospedado na WPPAPI. Ele inclui MCP Events e respostas vinculadas a cada pedido.
Tools
| Tool | Descrição |
| --- | --- |
| whatsapp_status | Status da instância (conectada? qual número?) |
| send_message | Envia texto para um número/chatId (grupos @g.us incluídos) |
| send_file | Envia mídia por URL (image, file, video, voice) |
| check_number, resolve_recipient | Confirma destinatário e resolve variantes brasileiras com/sem nono dígito |
| list_contacts, search_contacts, get_contact | Pesquisa e consulta contatos |
| search_chats | Pesquisa conversas e grupos por páginas |
| list_chats | Lista conversas recentes |
| get_messages | Lê as mensagens recentes de uma conversa |
| notify_user | Notifica o dono do agente (fire-and-forget) |
| ask_user | Pergunta ao dono do agente e aguarda a resposta (polling) |
| wait_for_reply | Aguarda nova mensagem do dono sem enviar nada |
Documentação completa (configuração, exemplos por cliente, modo listener, comportamento de erros): docs/mcp.md.
