fabric-aiops
Fabric AIops
Disclaimer: Community-maintained open-source project, not affiliated with, endorsed by, or sponsored by Cisco, Meraki, Arista, Ubiquiti, or any network-controller vendor. Product and trademark names belong to their owners. Source at github.com/AIops-tools/Fabric-AIops under the MIT license.
Governed network-fabric controller operations — 34 MCP tools over four platforms (Cisco Meraki Dashboard: full read+write; Cisco Catalyst Center and Arista CloudVision Portal: read subsets; UniFi Network: read subset + device restart), every one wrapped with the bundled @governed_tool harness: a local unified audit log under ~/.fabric-aiops/, token/runaway budget guard, undo-token recording, and descriptive risk tiers. The controller secret is stored encrypted (~/.fabric-aiops/secrets.enc, Fernet + scrypt) — never plaintext on disk.
Standalone: the governance harness is bundled in the package (
fabric_aiops.governance) — fabric-aiops has no external skill-family dependency. The test suite is mock-based; no platform has yet been exercised against a live controller (seedocs/VERIFICATION.md).
Platform support
| Platform | platform: |
Coverage | Auth |
|---|---|---|---|
| Cisco Meraki Dashboard | meraki |
full (all reads + all 8 writes) | API key (Bearer / X-Cisco-Meraki-API-Key) |
| Cisco Catalyst Center | catalyst |
read subset: sites (as orgs/networks), device+site+client health, issues→alerts, inventory, interface stats | username:password → short-lived X-Auth-Token (auto-refresh on 401) |
| Arista CloudVision Portal | cvp |
read subset: containers (as orgs/networks), inventory (+ complianceCode drift signal), events→alerts, users→admins | service-account token (Bearer) |
| UniFi Network | unifi |
read subset: sites (as orgs/networks), stat/device inventory+statuses, stat/health, alarms→alerts, stat/sta clients, device port_table→switch ports; plus the device-restart write (cmd/devmgr) | API key (X-API-KEY, stateless); base_url = classic https://<host>:8443 or UniFi OS console https://<console>/proxy/network |
Ops a platform does not map — and every write on catalyst/cvp (on unifi, every write except reboot) — return a teaching "not supported on <platform> yet — open an issue or PR" error, never a silent no-op. Full matrix in the repo README.