Skip to main content
Glama

Evolution API MCP Server

by PabloBispo
TODO.md4.14 kB
# ✅ TODO - Evolution API MCP Server Lista de tarefas pendentes e em progresso. **Última atualização:** 2025-10-23 --- ## 🔥 Urgente (Fazer Hoje) - [ ] Nenhuma tarefa urgente no momento --- ## 🎯 Próximas Tarefas (Esta Semana) ### Refatoração - Unificar Duplicações - [ ] Mesclar `fetch_contacts()` e `find_contacts()` em uma única função - Localização: `src/evoapi_mcp/client.py:306-358` - Criar: `fetch_contacts(contact_id: str | None = None)` - Remover: `find_contacts()` - [ ] Simplificar tools de contatos no server - Localização: `src/evoapi_mcp/server.py:293-359` - Unificar `get_contacts()` e `find_contact()` - Manter apenas: `get_contacts(contact_id=None, limit=None)` ### Validações - [ ] Adicionar validação de `media_type` em `send_media()` - Localização: `src/evoapi_mcp/client.py:442` - Validar: `{"image", "video", "document", "audio"}` - [ ] Adicionar validação de URLs em `send_media()` - Verificar se URL começa com `http://` ou `https://` - [ ] Adicionar validação de tamanho de texto - Em `send_text()`: max 65536 chars (limite WhatsApp) ### Cache com TTL - [ ] Implementar expiração automática do cache de contatos - Adicionar `_cache_timestamp: datetime | None` - Adicionar `_cache_ttl = timedelta(minutes=5)` - Adicionar método `_is_cache_expired()` - [ ] Criar método `clear_cache()` - Limpar `_contact_names_cache` - Resetar `_cache_timestamp` --- ## 📋 Backlog (Próximo Mês) ### Type Safety - [ ] Instalar Pydantic - Adicionar `pydantic>=2.0.0` em `pyproject.toml` - [ ] Criar models: - [ ] `Contact` - [ ] `Chat` - [ ] `Message` - [ ] `MediaMessage` - [ ] Atualizar type hints para usar models ### Error Handling - [ ] Adicionar retry logic com tenacity - Instalar `tenacity>=8.0.0` - Adicionar decorator `@retry` em `_make_request()` - [ ] Sanitizar logs - Criar método `_sanitize_error()` - Mascarar `self.api_key` nos logs ### Nomenclatura - [ ] Renomear tools para melhor clareza: - `get_chat_messages()` → `get_messages_from_chat()` - `find_messages()` → `search_messages_globally()` --- ## 🚀 Futuro (Próximos 3 Meses) ### Novas Funcionalidades - [ ] Grupos - [ ] Criar grupo - [ ] Adicionar/remover participantes - [ ] Listar membros - [ ] Gestão de mensagens - [ ] Deletar mensagem - [ ] Editar mensagem - [ ] Reagir com emoji - [ ] Marcar como lida - [ ] Upload/Download - [ ] Upload de arquivo local - [ ] Download de mídia recebida ### Testes - [ ] Setup pytest - [ ] Testes unitários (client.py) - [ ] Testes de integração (com mocks) - [ ] Coverage > 80% ### CI/CD - [ ] GitHub Actions - [ ] Pre-commit hooks - [ ] Auto-publish no PyPI ### Documentação - [ ] README.md completo - [ ] CHANGELOG.md - [ ] CONTRIBUTING.md - [ ] API Reference --- ## ✅ Concluído (Últimos 7 Dias) ### 2025-10-23 - ✅ Corrigido endpoint de contatos (`/chat/contacts` → `/chat/findContacts`) - ✅ Corrigido processamento de resposta (lista direta, não `{"data": [...]}`) - ✅ Otimizado busca de nomes (bulk fetch ao invés de N+1 requests) - ✅ Implementado cache de nomes em memória - ✅ Adicionado enriquecimento automático de chats com nomes ### 2025-10-22 - ✅ Migrado de biblioteca `evolutionapi` para HTTP direto com `requests` - ✅ Implementados todos endpoints principais da Evolution API - ✅ Adicionado suporte a contatos e nomes - ✅ Criados tools MCP completos - ✅ Adicionados parâmetros `limit` em todos os tools de listagem --- ## 📝 Notas ### Formato de Tarefas ```markdown - [ ] Descrição da tarefa - Localização: arquivo:linha - Contexto adicional - Impacto esperado ``` ### Prioridades - 🔥 **Urgente**: Fazer hoje - 🎯 **Alta**: Esta semana - 📋 **Média**: Este mês - 🚀 **Baixa**: Próximos 3 meses ### Como Marcar Tarefa como Concluída 1. Mover de "Próximas Tarefas" para "Concluído" 2. Adicionar data: `### YYYY-MM-DD` 3. Trocar `- [ ]` por `- ✅` 4. Adicionar commit hash se aplicável --- **Dica:** Use `Ctrl+F` para buscar tarefas específicas por arquivo ou funcionalidade.

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/PabloBispo/evoapi-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server