Labsco
MCP SERVER

gNMIBuddy

by jillesca

Ask an agent about your network devices — routing, interfaces, MPLS, VPNs, logs and topology — answered from gNMI rather than screen scraping.

Network, Endpoint & Fleet Management
Summary
Opinionated on purpose: it returns the fields that answer the question, not everything the model exposes.

gNMI and YANG will hand you an overwhelming amount of data, and the value here is the editorial choice about what an assistant should see. The constraints are stated up front — it is tested on Cisco XRd, log retrieval is IOS-XR only, and without an inventory file it cannot operate at all.

What it is

A network telemetry server that queries devices over gNMI using OpenConfig models and returns structured JSON. It is opinionated about which fields matter, so an agent gets a usable answer instead of the full YANG dump.

What you get
  • Routing: BGP and ISIS protocol state and neighbour status
  • Interfaces: status, configuration and statistics
  • MPLS: labels, forwarding tables and segment routing
  • VPN and VRF: L3VPN configuration and route targets
  • Logs: device logs with keyword filtering — IOS-XR only
  • Topology: direct neighbours over LLDP and CDP, plus network-wide adjacency analysis across every device in the inventory
  • Device profile and role information, and the gNMI capabilities a device reports
  • Inventory validation that checks format, IP addresses, required fields and authentication before you run anything
  • Batch operation across all devices at once, with a configurable worker count
Requirements

Python 3.13+ and uv; on Windows use WSL. Devices must have gNMI enabled and support the OpenConfig models the project lists — openconfig-system, openconfig-interfaces and openconfig-network-instance, each at or above a stated version. A device inventory file is mandatory: a JSON list of devices with a name, ip_address and nos, authenticated either by username and password or by certificate and key. Point at it with --inventory or the NETWORK_INVENTORY variable. Tested on Cisco XRd.