关于 Monitoring AIops
Monitoring AIops 是面向 NOC 运维人员的多平台监控 MCP 服务,覆盖 SolarWinds Orion、PRTG 和 Zabbix。它提供告警汇总、健康查询及受审计和风险标记的变更操作。
主要功能
- 01支持 SolarWinds、PRTG 和 Zabbix
- 02SWQL 预置查询与只读查询
- 03告警去重与汇总
- 04节点、接口及设备健康查询
- 05审计、风险标记与可撤销操作
适用场景
- 01汇总多个平台的活动告警
- 02查询节点、接口或设备健康状态
- 03分析 SWQL 查询结果
- 04审计维护窗口及设备变更
MCP 相关
作为 MCP 服务,它向客户端提供 42 个跨 SolarWinds、PRTG 和 Zabbix 的读取、写入及撤销工具。每次调用都会写入审计日志。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
42收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| target | any | 否 |
详细介绍
监控 AIops
免责声明:由社区维护的开源项目。与 SolarWinds、Paessler、Zabbix 或任何监控厂商均无关联,也未获得其认可或赞助。 SolarWinds、Orion、SWQL、THWACK、PRTG、Paessler 和 Zabbix 均为其各自所有者的商标。采用 MIT 许可证。
通过一个服务统一管理三种 NOC 平台的网络/基础设施监控 AI 运维:SolarWinds Orion(SWIS REST + SWQL,端口 17774,自动回退至旧版 17778,HTTP Basic 身份验证)、Paessler PRTG(Web API,端口 443/8080,API 令牌)和 Zabbix 6.x/7.x(/api_jsonrpc.php 上的 JSON-RPC 2.0,API 令牌),并内置治理机制:统一审计日志、策略引擎、令牌/失控操作预算防护、撤销令牌记录,以及审计跟踪中的风险等级标记。一份配置可覆盖所有 NOC;每个目标都指定自己的 platform。
功能
回答 NOC 操作员反复遇到的问题,并管控后续写入操作:
- 预置 SWQL 查询库 — 收录最常见的 THWACK 问题,并提供经过验证的命名查询(
nodes_down、flapping_interfaces、muted_report、high_cpu_nodes、volumes_full、unmanaged_scheduled),还提供经过验证的只读 SWQL 直通查询(仅限 SELECT),以满足其他需求。 - 活动告警去重/汇总 — 将接口抖动或节点宕机风暴合并为一条带计数的记录,而不是显示一堆几乎相同的告警;适用于 SolarWinds、PRTG 和 Zabbix(问题告警,严重性 0–5 级映射到规范等级)。
- 覆盖 SolarWinds + PRTG + Zabbix 三大平台 — 一个 MCP 服务覆盖三个 NOC;现有业余爱好者开发的 MCP 服务无一具备此能力。
- 受治理的写入操作 — 静音/取消静音、维护窗口(包括支持可重放删除撤销的 Zabbix
maintenance.create)、取消管理/恢复管理、移除节点,以及暂停/恢复 PRTG 传感器。每项操作都会经过审计和风险分级;破坏性操作还必须通过试运行 + 二次确认。抑制和维护写入操作均有时间限制(必须指定结束时间/持续时长)。
本工具会做什么,以及不会决定什么
本工具准确、高效地执行 NOC 操作——读取和写入——并记录每一项操作。它不会决定是否允许执行写入操作。那由 Agent 自行判断,或由你连接的账户权限决定:提供一个仅具备只读监控权限的 SolarWinds/PRTG/Zabbix 账户,写入操作就会在服务端失败——因为权限由服务端实际管理。
因此,本工具没有只读开关、策略文件或待配置的审批关卡。本工具唯一能保证的是:不会有任何操作悄无声息地发生:通过 MCP 或 CLI 发起的每一次调用,都会在 ~/.monitoring-aiops/audit.db 中生成一条审计记录;破坏性写入操作仍会捕获操作前的状态,并在存在逆向操作时记录该操作。
每个工具都会声明一个
risk_level,并通过测试确保其与文档标签[READ]/[WRITE]一致;该等级也会写入审计记录作为说明性级别,让审核人员一眼就能看出某条记录涉及高风险的节点移除操作。这只是标签,不是关卡。
使用较小型/本地模型?请参阅 agent-guardrails.md — 其中列出了本工具现在为你强制执行的防护措施(让你不必在提示词预算中重复说明),并提供了现成的系统提示词,供你处理剩余事项。
能力矩阵(42 个 MCP 工具)
| 分组 | 平台 | 工具 | 数量 | 读/写 |
|---|---|---|---|---|
| SWQL | SolarWinds | swql_library, swql_canned, swql_query | 3 | 读取 |
| 告警 | 全部 | active_alerts(去重/汇总) | 1 | 读取 |
| 全部 | alert_acknowledge | 1 | 写入(低) | |
| SolarWinds 健康状态 | SolarWinds | node_status, nodes_list, interface_status, volume_status, application_status, topn, noc_rollup | 7 | 读取 |
| SolarWinds 写入 | SolarWinds | list_events, list_unmanaged, list_muted | 3 | 读取 |
| SolarWinds | mute_alerts, unmute_alerts, schedule_maintenance, remanage_node | 4 | 写入(中) | |
| SolarWinds | unmanage_node, remove_node | 2 | 写入(高) | |
| PRTG 读取 | PRTG | prtg_sensors, prtg_sensor_details, prtg_devices, prtg_groups, prtg_history, prtg_system_status, prtg_alarms | 7 | 读取 |
| PRTG 写入 | PRTG | pause_sensor, resume_sensor, schedule_maintenance_prtg | 3 | 写入(中) |
| Zabbix 读取 | Zabbix | zabbix_problems, zabbix_hosts, zabbix_hostgroups, zabbix_triggers, zabbix_events, zabbix_item_history, zabbix_maintenances | 7 | 读取 |
| Zabbix 写入 | Zabbix | zabbix_create_maintenance | 1 | 写入(中) |
| Zabbix | zabbix_delete_maintenance | 1 | 写入(高) | |
| 撤销 | 全部 | undo_list, undo_apply | 2 | 撤销 |
CLI 提供一组便捷的子集;完整的 42 个工具接口通过 MCP 服务提供。
快速开始
作为 Claude Code 插件
一次安装即可让 Agent 同时获得技能和 MCP 服务:
/plugin marketplace add AIops-tools/marketplace
/plugin install monitoring-aiops@aiops-tools
MCP 服务通过 uv 获取,并固定为此插件声明的
软件包版本,因此可以将审计记录追溯到写入该记录的代码。凭据仍通过
monitoring-aiops init 配置——请参阅下文。
作为 OpenClaw 插件
同一捆绑包发布在 ClawHub 上,安装一次即可同时 获得技能和 MCP 服务:
openclaw plugins install clawhub:@zw008/monitoring-aiops
openclaw skills info monitoring-aiops # expect: Visible to model: yes
之后重启 OpenClaw 网关,使其加载插件。MCP 服务通过
uv 获取,并固定为此确切版本,因此
uvx 必须位于 PATH 中——否则技能仍会安装,但会报告
Visible to model: no。凭据按下文所述进行配置。
作为 CLI 或独立 MCP 服务
uv tool install monitoring-aiops # or: pipx install monitoring-aiops
monitoring-aiops init # wizard: pick platform (solarwinds/prtg/zabbix) + store the secret (encrypted)
monitoring-aiops doctor # verify config, secrets, connectivity
monitoring-aiops overview # NOC summary: platform + active/unacked alerts + top rollup
monitoring-aiops swql library # list the canned SWQL queries
monitoring-aiops swql canned nodes_down # run a named canned query
作为 MCP 服务运行(stdio):
export MONITORING_AIOPS_MASTER_PASSWORD=... # unlock secrets non-interactively
monitoring-aiops mcp
密码随后会存在哪里:导出的变量可被此 shell 启动的每个进程读取, 并会记录在 shell 历史中。在共享或长期运行的主机上,建议使用交互式 提示,或在需要它的单条命令运行期间,通过密钥管理器注入密码。
治理
每个 MCP 工具都会通过捆绑的 @governed_tool 执行框架:
- 审计 — 每次调用(参数、结果、状态、耗时、风险级别、
审批者、理由)都会记录到
~/.monitoring-aiops/audit.db(可通过MONITORING_AIOPS_HOME更改位置)。 - 预算/失控防护 — 令牌和调用预算会在密集的轮询/重试循环中触发断路器。 这是安全防护措施,而非授权机制。
- 风险级别标注 — 每个工具声明的
risk_level都会作为描述性级别写入 审计记录(这是标签,而非门禁)。MONITORING_AUDIT_APPROVED_BY/MONITORING_AUDIT_RATIONALE是可选的 审计注释;设置后会记录,但从不强制要求。 - 撤销记录 — 可逆写入会记录逆向操作描述符
(
mute_alerts→取消静音,unmanage_node→重新管理,pause_sensor→恢复,zabbix_create_maintenance→删除该维护项 ID)。
支持范围与限制
- 平台:SolarWinds Orion(SWIS REST + SWQL)、Paessler PRTG(Web API)和 Zabbix 6.x/7.x(JSON-RPC 2.0;6.4+/7.x 通过 Bearer 标头传递 API 令牌,6.0 则回退使用旧版
auth字段)。 - Zabbix 范围:问题/触发器/主机/主机组/事件、有界条目历史、维护时段(创建/删除),以及通过跨平台的
alert_acknowledge确认事件。不支持模板/发现/用户 CRUD 和trend.get——如果需要这些功能,请提交 issue。 - 验证状态。 测试套件通过模拟的 SWIS/PRTG/Zabbix 响应进行了行为测试;尚未在实际 NOC 上运行(参见
docs/VERIFICATION.md)。PRTG 提供包含 API 的免费永久版 100 传感器 Freeware 版本,Zabbix 则完全开源(使用 Docker-compose 部署设备,10 分钟即可完成实际测试)——这两者最便于进行实际测试。 SolarWinds 仅提供 30 天试用版;试用期结束后,此工具只能通过模拟进行测试,这是最大的验证欠账。monitoring-aiops doctor是最快的实际测试方式(SolarWinds 执行 SWQL 查询,PRTG 请求/api/status.json,Zabbix 则在无需身份验证的情况下调用apiinfo.version,并在通过身份验证后统计主机数量)。
缺少某项功能?
想要其他预设查询、修复平台方言,或添加此处尚未提供的功能?请提交 issue 或 PR——欢迎反馈和贡献。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。