Monitoring AIops

io.github.AIops-tools由 GitHub 帳號 AIops-tools 發布v0.13.0更新於 Oct 30, 2026

Governed SolarWinds Orion + PRTG + Zabbix ops: SWQL, alert rollup, health, 42 tools.

概覽

AI 產生的概覽

針對 SolarWinds Orion、PRTG 與 Zabbix 的受治理 AI 維運 MCP 伺服器:讀取 NOC 健康狀態與告警、執行 SWQL,並進行可稽核、具風險分級的寫入操作。

可以做什麼
  • 執行預設及唯讀 SWQL 查詢,檢視 SolarWinds 節點、介面、磁碟區與應用程式健康狀態
  • 跨 SolarWinds、PRTG、Zabbix 彙整並去除重複的作用中告警,並確認告警
  • 讀取 PRTG 感測器、裝置、群組、歷史與警報,以及 Zabbix 問題、主機、觸發器、事件與監控項歷史
  • 執行受治理的寫入操作:靜音/取消靜音、維護視窗、取消/恢復管理、移除節點、暫停/恢復感測器
  • 列出並套用可逆寫入所記錄的復原動作
適用情境
適合已在使用 SolarWinds Orion、PRTG 或 Zabbix 的 NOC 或基礎架構團隊,希望由助理回答重複的監控問題,並在留有稽核紀錄的前提下執行例行的告警抑制或維護變更。
執行需求
以 Python 套件形式透過 stdio 在本機執行(uv tool install 或 pipx)。需要能連線各監控平台的網路與對應憑證,透過 init 精靈設定並加密儲存;主密碼可經由 MONITORING_AIOPS_MASTER_PASSWORD 環境變數提供。稽核資料存於本機 SQLite 檔案,可用 MONITORING_AIOPS_HOME 變更位置。
安裝前請注意
寫入操作會實際生效:靜音、維護、取消管理與移除節點會改變正式環境監控,且沒有唯讀開關或核准機制,應謹慎限縮所連帳號的權限。主密碼用於解鎖已存密鑰,匯出後會暴露給子程序與 shell 歷史紀錄。每次呼叫都會寫入本機稽核資料庫。其行為僅以模擬回應測試,尚未在真實 NOC 上驗證。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Monitoring AIops,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Desktop only,透過 STDIO。 STDIO 服務會啟動本機處理程序,因此需要 SourceWeft 桌面主機。

其他 MCP 客戶端

參照 儲存庫 中的啟動說明。

README

Monitoring AIops

Audit availability: Real writes require a committed pending audit row and stop before contacting the platform if storage is unavailable. Reads and previews may continue with a warning; new audit rows store outcome summaries rather than full responses.

Disclaimer: Community-maintained open-source project. Not affiliated with, endorsed by, or sponsored by SolarWinds, Paessler, Zabbix, or any monitoring vendor. SolarWinds, Orion, SWQL, THWACK, PRTG, Paessler and Zabbix are trademarks of their respective owners. MIT licensed.

Governed AI-ops for network / infrastructure monitoring across three NOC platforms in one server — SolarWinds Orion (SWIS REST + SWQL, port 17774 with an automatic fallback to the legacy 17778, HTTP Basic auth), Paessler PRTG (web API, port 443/8080, API token), and Zabbix 6.x/7.x (JSON-RPC 2.0 at /api_jsonrpc.php, API token) — with a built-in governance harness: unified audit log, policy engine, token/runaway budget guard, undo-token recording, and risk-tier labelling on the audit trail. One config can span all NOCs; each target names its own platform.

What it does

Answers the questions a NOC operator actually repeats, and guards the writes that follow:

  • Canned-SWQL library — the most-asked THWACK questions shipped as named, validated queries (nodes_down, flapping_interfaces, muted_report, high_cpu_nodes, volumes_full, unmanaged_scheduled), plus a validated read-only SWQL passthrough (SELECT-only) for everything else.
  • Active-alert dedup / rollup — collapses an interface-flap or node-down storm into a single counted entry instead of a wall of near-identical alerts, across SolarWinds, PRTG, and Zabbix (problems, with the 0-5 severity scale mapped to canonical levels).
  • Triple SolarWinds + PRTG + Zabbix coverage — one MCP server spans all three NOCs; no incumbent hobby MCP does.
  • Governed writes — mute/unmute, maintenance windows (incl. Zabbix maintenance.create with a replayable delete-undo), unmanage/remanage, node removal, and PRTG sensor pause/resume — each audited, risk-tiered, and the destructive ones gated with dry-run + double-confirm. Suppression and maintenance writes are time-boxed (they require an end time / duration).

What this tool does, and does not, decide

It delivers NOC operations — reads and writes — accurately and efficiently, and records every one of them. It does not decide whether a write is allowed to happen. That is the agent's judgement, or the permission of the account you connect it with: give it a SolarWinds/PRTG/Zabbix account with read-only monitoring scope and the writes fail at the server — the place that actually owns the permission.

So there is no read-only switch, no policy file, no approval gate to configure. The one thing the tool guarantees is that nothing is silent: every call, over MCP and over the CLI alike, lands an audit row in ~/.monitoring-aiops/audit.db, and destructive writes still capture their before-state and record an inverse where one exists.

Each tool declares a risk_level, kept in agreement with its [READ]/[WRITE] documentation tag by a test, and carried into the audit row as a descriptive tier — so a reviewer can see at a glance that a row was a high-risk node removal. It is a label, not a gate.

Running a smaller / local model? See agent-guardrails.md — it lists the guardrails this tool now enforces for you (so you don't spend prompt budget restating them) and gives a ready-made system prompt for what's left.

Capability matrix (42 MCP tools)

GroupPlatformToolsCountR/W
SWQLSolarWindsswql_library, swql_canned, swql_query3read
Alertsallactive_alerts (dedup/rollup)1read
allalert_acknowledge1write (low)
SolarWinds healthSolarWindsnode_status, nodes_list, interface_status, volume_status, application_status, topn, noc_rollup7read
SolarWinds writesSolarWindslist_events, list_unmanaged, list_muted3read
SolarWindsmute_alerts, unmute_alerts, schedule_maintenance, remanage_node4write (med)
SolarWindsunmanage_node, remove_node2write (high)
PRTG readsPRTGprtg_sensors, prtg_sensor_details, prtg_devices, prtg_groups, prtg_history, prtg_system_status, prtg_alarms7read
PRTG writesPRTGpause_sensor, resume_sensor, schedule_maintenance_prtg3write (med)
Zabbix readsZabbixzabbix_problems, zabbix_hosts, zabbix_hostgroups, zabbix_triggers, zabbix_events, zabbix_item_history, zabbix_maintenances7read
Zabbix writesZabbixzabbix_create_maintenance1write (med)
Zabbixzabbix_delete_maintenance1write (high)
Undoallundo_list, undo_apply2undo

The CLI exposes a convenience subset; the full 42-tool surface is via the MCP server.

Quick start

As a Claude Code plugin

One install gives an agent both the skill and the MCP server:

/plugin marketplace add AIops-tools/marketplace/plugin install monitoring-aiops@aiops-tools

The MCP server is fetched with uv and pinned to the package version this plugin declares, so an audit row can be traced back to the code that wrote it. Credentials are still configured with monitoring-aiops init — see below.

As an OpenClaw plugin

The same bundle is published on ClawHub, where one install delivers the skill and its MCP server together:

bash
openclaw plugins install clawhub:@zw008/monitoring-aiopsopenclaw skills info monitoring-aiops          # expect: Visible to model: yes

Restart the OpenClaw gateway afterwards so it loads the plugin. The MCP server is fetched with uv, pinned to this exact release, so uvx has to be on PATH — without it the skill still installs but reports Visible to model: no. Credentials are configured exactly as below.

As a CLI or standalone MCP server

bash
uv tool install monitoring-aiops          # or: pipx install monitoring-aiopsmonitoring-aiops init                     # wizard: pick platform (solarwinds/prtg/zabbix) + store the secret (encrypted)monitoring-aiops doctor                   # verify config, secrets, connectivitymonitoring-aiops overview                 # NOC summary: platform + active/unacked alerts + top rollupmonitoring-aiops swql library             # list the canned SWQL queriesmonitoring-aiops swql canned nodes_down   # run a named canned query

Run as an MCP server (stdio):

bash
export MONITORING_AIOPS_MASTER_PASSWORD=...   # unlock secrets non-interactivelymonitoring-aiops mcp

Where that password then lives: an exported variable is readable by every process this shell starts and is recorded by shell history. On a shared or long-lived host, prefer the interactive prompt, or inject it from a secret manager for the life of the one command that needs it.

Governance

Every MCP tool passes through the bundled @governed_tool harness:

  • Audit — every call (params, outcome summary, status, duration, risk tier, approver, rationale) is logged to ~/.monitoring-aiops/audit.db (relocatable via MONITORING_AIOPS_HOME).
  • Budget / runaway guard — token and call budgets trip a circuit breaker on tight poll/retry loops. It is a safety backstop, not authorization.
  • Risk-tier labelling — each tool's declared risk_level is carried into the audit row as a descriptive tier (a label, not a gate). MONITORING_AUDIT_APPROVED_BY / MONITORING_AUDIT_RATIONALE are optional audit annotations, recorded when set and never required.
  • Undo recording — reversible writes record an inverse descriptor (mute_alerts→unmute, unmanage_node→remanage, pause_sensor→resume, zabbix_create_maintenance→delete that maintenance id).

Supported scope & limitations

  • Platforms: SolarWinds Orion (SWIS REST + SWQL), Paessler PRTG (web API), and Zabbix 6.x/7.x (JSON-RPC 2.0; API token via Bearer header on 6.4+/7.x, with a legacy auth-field fallback for 6.0).
  • Zabbix scope: problems/triggers/hosts/host groups/events, bounded item history, maintenance windows (create/delete), and event acknowledge via the cross-platform alert_acknowledge. Template/discovery/user CRUD and trend.get are not covered — open an issue if you need them.
  • Validation status. Behaviour is exercised by the test suite against mocked SWIS/PRTG/Zabbix responses; it has not been run against a live NOC (see docs/VERIFICATION.md). PRTG has a free perpetual 100-sensor Freeware edition with the API, and Zabbix is fully open source (a Docker-compose appliance is a 10-minute live check) — the easiest live checks. SolarWinds is a 30-day trial only; past the trial this tool is mock-only, which is the largest verification debt. monitoring-aiops doctor is the fastest live check (a SWQL query for SolarWinds, /api/status.json for PRTG, unauthenticated apiinfo.version + an authed host count for Zabbix).

Missing a capability?

Want another canned query, a platform dialect fixed, or a capability that isn't here? Open an issue or a PR — feedback and contributions are welcome.

來源:README.md,提交 db53991

工具

0
SourceWeft 曾在隔離沙箱中以無憑證方式啟動該軟體包一次,以列出其工具,但未能完成:伺服器未能啟動。

版本歷史

5
  1. v0.13.0最新Oct 30, 2026
  2. v0.12.0Oct 15, 2026
  3. v0.11.0Oct 15, 2026
  4. v0.10.4Sep 17, 2026
  5. v0.10.3Sep 16, 2026

評分

已滿足適用檢查項的 50%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通25 分

    請保持端點能夠回應 MCP 握手;SourceWeft 每 30 天探測一次。

  • 已宣告認證方式10 分

    請在註冊中心條目中宣告憑證請求標頭,或保持端點能夠回應探測,以便判定其認證方式。

  • 已列出工具15 分

    請讓伺服器在無憑證時回應 tools/list,或發布可在沙箱中無憑證啟動的軟體包。

  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分