Sobre o projeto

mcp-vmanomaly é uma implementação de código aberto de um servidor de Protocolo de Contexto de Modelo (MCP) que conecta assistentes de IA (como Claude, Cursor, VS Code Copilot e outros) ao VictoriaMetrics Anomaly Detection (vmanomaly). Ele expõe um conjunto de ferramentas que permitem que agentes de IA interajam com uma instância vmanomaly em execução por meio de sua API REST, cobrindo monitoramento de saúde, descoberta e validação de modelos, geração de configuração YAML, geração de regras VMAlert a partir de métricas de pontuação de anomalia, criação de perfil de séries temporais, tarefas de autotune compartilhadas e busca de documentação em texto completo com correspondência difusa. O servidor inclui documentação vmanomaly incorporada e atualizada para que a busca de documentação funcione offline, sem acesso à rede. Ele suporta três modos de transporte: stdio (padrão, para uso local de usuário único), HTTP de fluxo contínuo (expondo /mcp) e o transporte SSE legado (expondo /sse e /message). A configuração é totalmente orientada por variáveis de ambiente, incluindo a URL do endpoint vmanomaly, token de portador (ou arquivo de token para segredos montados), cabeçalhos HTTP personalizados, tempo limite de solicitação, lista de permissões/negações de ferramentas, alternâncias de recursos, intervalo de heartbeat e nível/arquivo de log. O servidor também expõe endpoints /metrics no formato Prometheus, /health/liveness e /health/readiness para monitoramento operacional. As opções de instalação incluem Go install, binários pré-compilados dos GitHub Releases (com verificação de checksum e atestado de proveniência de build), imagens Docker do ghcr.io e compilação a partir do código-fonte. As instruções de configuração do cliente são fornecidas para Cursor, Claude Desktop, Claude Code, Visual Studio Code, Zed, IDEs JetBrains e Windsurf, cada uma com trechos de configuração JSON. Uma configuração de cliente baseada em Docker também é incluída para ambientes onde executar um binário local é impraticável. A orientação de segurança é extensa: o servidor encaminha solicitações usando um token de portador em todo o processo e não implementa identidade por usuário ou isolamento de tenant. A documentação recomenda stdio para uso local de usuário único, proxies reversos TLS autenticados (como vmauth) para acesso HTTP/SSE remoto, credenciais vmanomaly de privilégio mínimo e aplicação de listas de permissões/negações de ferramentas. Ele avisa explicitamente contra colocar vários domínios não confiáveis atrás de uma única credencial MCP estática e aconselha tratar uma instalação vmanomaly lógica como um domínio confiável. O conjunto de ferramentas é organizado em categorias: Saúde e Informações (4 ferramentas), Configuração de Modelos (4 ferramentas), Validação de Configuração (1 ferramenta), Busca de Documentação (1 ferramenta), Verificação de Compatibilidade (1 ferramenta), Geração de Regras de Alerta (1 ferramenta) e Análise e Autotune (4 ferramentas). As tarefas de autotune aceitam parâmetros de orçamento de otimização (tentativas, tempo limite, parâmetros Optuna avançados) e retornam recomendações para configurações de modelo prontas para produção em séries temporais amostradas. O servidor requer vmanomaly 1.28.3+ para o conjunto central de ferramentas, 1.30.0+ para características de séries temporais e autotune compartilhado baseado em tarefas, e 1.30.5+ para autotune compartilhado de consulta nomeada e sugestões de política de consulta no VMUI. Go 1.24+ é necessário para compilar a partir do código-fonte.