MCP Zabbix服务器
用于监控Zabbix API的MCP服务器。提供只读工具:
- 获取主机列表
- 解决当前问题
- 获取触发器
- 接收主机负载(CPU、RAM、磁盘)
- 获取度量历史记录
安装
# Создать виртуальное окружение
python -m venv .venv
# Активировать
source .venv/bin/activate
# Установить зависимости
pip install -e .配置
创建文件 config.yaml:
zabbix:
url: "http://zabbix.example.com"
username: "Admin"
password: "your_password"启动服务器
# Из конфиг-файла
python -m mcp_zabbix_server --config config.yaml
# Из переменных окружения
ZABBIX_URL=http://zabbix.example.com \
ZABBIX_USERNAME=Admin \
ZABBIX_PASSWORD=your_password \
python -m mcp_zabbix_server
# С указанием порта и хоста
python -m mcp_zabbix_server --config config.yaml --host 0.0.0.0 --port 8000使用客户
# Список доступных инструментов
mcp-client tools http://localhost:8000
# Получить хосты
mcp-client call http://localhost:8000 --tool get_hosts
# Получить проблемы
mcp-client call http://localhost:8000 --tool get_problems
# Получить нагрузку хоста
mcp-client call http://localhost:8000 --tool get_host_load --args '{"host_id": "10084"}'
# Получить историю
mcp-client call http://localhost:8000 --tool get_history --args '{"host_id": "10084", "item_key": "system.cpu.load[all,avg1]", "time_from_hours": 24}'可用工具
工具描述参数 |------------|----------|-----------| | get_hosts 主机列表 host_ids, group_ids, filter_name | | get_problems 目前的问题。 host_ids, severity, time_from_hours | | get_triggers 触发器主机 host_ids, status, priority | | get_host_load 负载(CPU/RAM/Disk) host_id, item_key | | get_history Metric的历史 host_id, item_key, time_from_hours, time_till_hours, limit |
要求
- Python 3.13+
- Zabbix 7.x(使用Bearer Token Auth)
