mcp-whatsapp-server

pedsanches/mcp-whatsapp-server

3.1

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.

Tools
2
Resources
0
Prompts
0

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

  1. Clone este repositório:

    git clone https://github.com/seu-usuario/mcp-whatsapp-server.git
    cd mcp-whatsapp-server
    
  2. Instale as dependências:

    pip install -r requirements.txt
    
  3. 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)
    
  4. Configure seus contatos no arquivo contatos.json:

    {
        "contatos": {
            "Nome1": "5511999999999",
            "Nome2": "5522888888888"
        }
    }
    

Uso

  1. Inicie a API Waha seguindo as instruções oficiais

  2. Execute o servidor MCP:

    python server.py
    
  3. Use o servidor com um cliente MCP compatível (como Claude Desktop)

Recursos MCP Disponíveis

Resources

  • waha://configuracao - Configurações da API Waha
  • waha://status - Status atual da conexão WhatsApp
  • waha://contatos - Lista de contatos mapeados por nome

Ferramentas (Tools)

  • verificar_conexao_whatsapp() - Verifica o status atual da conexão
  • enviar_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 .

Imagens e Demonstração

Exemplos de uso