zabbix-mcp
README.md
# zabbix-mcp
MCP server para acessar a API do Zabbix `https://monitor.c15.ligerosmart.com`.
## Tools expostas
| Tool | Descrição |
|------|-----------|
| `zabbix_host_get` | Lista hosts com filtros (hostids, groupids, status) |
| `zabbix_host_search` | Busca livre por hosts (name/host/ip + wildcards) |
| `zabbix_problem_get` | Problems ativos com filtros de severidade/tempo |
| `zabbix_trigger_get` | Triggers configurados (min_severity, only_true) |
| `zabbix_item_get` | Items/métricas (filtro por key_) |
| `zabbix_history_get` | Histórico numérico (itemids, time window) |
| `zabbix_event_get` | Events (OK/PROBLEM, severities, time window) |
| `zabbix_event_acknowledge` | Reconhecer eventos |
## Configuração
| Variável | Descrição | Default |
|----------|-----------|---------|
| `ZABBIX_URL` | Base URL (sem `/api_jsonrpc.php`) | `https://monitor.c15.ligerosmart.com` |
| `ZABBIX_TOKEN` | Token da API direto (env) | — |
| `ZABBIX_TOKEN_FILE` | Caminho de um arquivo com o token | — |
O token vem de **`ZABBIX_TOKEN`** (tem precedência) **ou** de **`ZABBIX_TOKEN_FILE`** —
pelo menos um é obrigatório. Use `ZABBIX_TOKEN` em deploys só-env (ex.: Swarm/Portainer)
e `ZABBIX_TOKEN_FILE` quando o token vier de um arquivo/secret montado.
## Build & Run
```bash
npm install
npm run build
npm test
# via arquivo
ZABBIX_TOKEN_FILE=$(pwd)/.token node dist/index.js
# ou via env direto
ZABBIX_URL=https://meu-zabbix ZABBIX_TOKEN=xxxxx node dist/index.js
```
## Uso
Servidor MCP (stdio). Consumido tanto pelo Claude Code (`mcpServers` em `~/.claude.json`)
quanto pela imagem `ghcr.io/marcelofmatos/mcp-supergateway-node`, que expõe o servidor via
streamable-HTTP na stack `mcp-servers-anton`.
This server cannot be deployed
Maintenance
ActivityInactive
ResponsivenessNo issues