mcp-whatsapp-server
If you are the rightful owner of mcp-whatsapp-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.
Servidor baseado no Model Context Protocol (MCP) para integração com WhatsApp através da API Waha.
MCP WhatsApp Server
Servidor baseado no Model Context Protocol (MCP) para integração com WhatsApp através da API Waha.
Sobre o Projeto
Este servidor permite que assistentes IA compatíveis com MCP (como Claude) interajam diretamente com contatos no WhatsApp. O projeto utiliza a Waha API como backend para comunicação com o WhatsApp Web.
Funcionalidades
- ✅ Verificação do status de conexão do WhatsApp
- ✅ Envio de mensagens via número de telefone
- ✅ Envio de mensagens via nome de contato cadastrado
- ✅ Gerenciamento de contatos por nome
- ✅ Visualização de configurações do servidor
Requisitos
- Python 3.7+
- API Waha em execução
- Biblioteca MCP (Fast MCP)
Instalação
-
Clone este repositório:
git clone https://github.com/seu-usuario/mcp-whatsapp-server.git cd mcp-whatsapp-server
-
Instale as dependências:
pip install -r requirements.txt
-
Configure as variáveis de ambiente em um arquivo
.env
:WAHA_API_URL=http://localhost:3000 WAHA_SESSION_ID=default CONTATOS_FILE=caminho/para/contatos.json (opcional)
-
Configure seus contatos no arquivo
contatos.json
:{ "contatos": { "Nome1": "5511999999999", "Nome2": "5522888888888" } }
Uso
-
Inicie a API Waha seguindo as instruções oficiais
-
Execute o servidor MCP:
python server.py
-
Use o servidor com um cliente MCP compatível (como Claude Desktop)
Recursos MCP Disponíveis
Resources
waha://configuracao
- Configurações da API Wahawaha://status
- Status atual da conexão WhatsAppwaha://contatos
- Lista de contatos mapeados por nome
Ferramentas (Tools)
verificar_conexao_whatsapp()
- Verifica o status atual da conexãoenviar_mensagem_whatsapp(numero, mensagem)
- Envia mensagem por número
Exemplos
Verificar Status da Conexão
status = verificar_conexao_whatsapp()
print(f"Status: {status['mensagem']}")
Enviar Mensagem por Número
resultado = enviar_mensagem_whatsapp("5511999999999", "Olá! Esta é uma mensagem de teste.")
print(f"Resultado: {resultado['mensagem']}")
Enviar Mensagem por Nome
resultado = enviar_mensagem_por_nome("Pedro", "Olá! Esta é uma mensagem de teste.")
print(f"Resultado: {resultado['mensagem']}")
Contribuições
Contribuições são bem-vindas! Sinta-se à vontade para abrir issues ou enviar pull requests.
Licença
Este projeto está licenciado sob .