SuzieQ Network Observability
Server & Configuration
- Server script:
mcp-servers/suzieq-mcp/server.py
- Transport: stdio (JSON-RPC 2.0)
- Environment variables:
SUZIEQ_API_URL, SUZIEQ_API_KEY
- Optional:
SUZIEQ_VERIFY_SSL (default: true), SUZIEQ_TIMEOUT (default: 30s)
All 5 Available Tools
1. suzieq_show
Query detailed network state data from any SuzieQ table. Supports filtering by device, namespace, time range, and columns. Use for current or historical (time-travel) network state queries.
table (string, required): SuzieQ table name (e.g., "bgp", "route", "interface")
namespace (string): Filter by SuzieQ namespace
hostname (string): Filter by device hostname
columns (string): Comma-separated column names to return
start_time (string): Start time for time-travel query (ISO 8601 or relative e.g., "1h", "2d")
end_time (string): End time for time-travel query
view (string): Data view: "latest", "all", or "changes"
filters (string): Additional key=value pairs separated by ampersand
Use when: Querying current network state, investigating specific devices, performing time-travel queries for historical analysis.
2. suzieq_summarize
Get aggregated statistics and summary views of any SuzieQ network table. Returns counts, distributions, and per-device breakdowns.
table (string, required): SuzieQ table name
namespace (string): Filter by SuzieQ namespace
hostname (string): Filter by device hostname
start_time (string): Start time for historical summary
end_time (string): End time for historical summary
Use when: Getting high-level network overview, distribution analysis, capacity planning.
3. suzieq_assert
Run validation assertions against network state. Checks conditions like "all BGP peers established" or "no interface errors".
table (string, required): Must be one of: bgp, ospf, interface, evpnVni
namespace (string): Filter by SuzieQ namespace
hostname (string): Filter by device hostname
Use when: Validating network health, pre/post-change verification, compliance checks.
4. suzieq_unique
Get distinct values and their counts for a specific column in a SuzieQ table.
table (string, required): SuzieQ table name
column (string, required): Column name to get unique values for
namespace (string): Filter by SuzieQ namespace
hostname (string): Filter by device hostname
Use when: Understanding value distributions (unique VRFs, BGP states, interface types).
5. suzieq_path
Trace the forwarding path between two endpoints through the network.
namespace (string, required): SuzieQ namespace
source (string, required): Source IP address
destination (string, required): Destination IP address
vrf (string): VRF name (default: "default")
Use when: Troubleshooting connectivity, verifying forwarding paths, path analysis.
Workflow
- Start with
suzieq_show or suzieq_summarize to understand current network state
- Use
suzieq_assert to validate health (BGP established, OSPF full, interfaces up)
- Use
suzieq_unique to explore value distributions for specific columns
- Use
suzieq_path to trace forwarding paths between endpoints
- Use
start_time/end_time on show/summarize for time-travel historical analysis
Supported Tables
address, arpnd, bgp, device, devconfig, evpnVni, fs, ifCounters, interface, inventory, lldp, mac, mlag, namespace, network, ospf, route, sqPoller, topology, vlan
1---2name: suzieq-observability3description: SuzieQ network observability — query current and historical network state, run validation assertions, get summary statistics, trace forwarding paths, and discover unique values across 20+ network tables. Use when investigating BGP/OSPF state, checking interface health, performing time-travel queries, validating network assertions, or tracing packet paths through the network via SuzieQ.4license: Apache-2.05---6
7# SuzieQ Network Observability
8
9## Server & Configuration
10
11- **Server script:** `mcp-servers/suzieq-mcp/server.py`
12- **Transport:** stdio (JSON-RPC 2.0)
13- **Environment variables:** `SUZIEQ_API_URL`, `SUZIEQ_API_KEY`
14- **Optional:** `SUZIEQ_VERIFY_SSL` (default: true), `SUZIEQ_TIMEOUT` (default: 30s)
15
16## All 5 Available Tools
17
18### 1. `suzieq_show`
19
20Query detailed network state data from any SuzieQ table. Supports filtering by device, namespace, time range, and columns. Use for current or historical (time-travel) network state queries.
21
22- `table` (string, required): SuzieQ table name (e.g., "bgp", "route", "interface")
23- `namespace` (string): Filter by SuzieQ namespace
24- `hostname` (string): Filter by device hostname
25- `columns` (string): Comma-separated column names to return
26- `start_time` (string): Start time for time-travel query (ISO 8601 or relative e.g., "1h", "2d")
27- `end_time` (string): End time for time-travel query
28- `view` (string): Data view: "latest", "all", or "changes"
29- `filters` (string): Additional key=value pairs separated by ampersand
30
31**Use when:** Querying current network state, investigating specific devices, performing time-travel queries for historical analysis.
32
33### 2. `suzieq_summarize`
34
35Get aggregated statistics and summary views of any SuzieQ network table. Returns counts, distributions, and per-device breakdowns.
36
37- `table` (string, required): SuzieQ table name
38- `namespace` (string): Filter by SuzieQ namespace
39- `hostname` (string): Filter by device hostname
40- `start_time` (string): Start time for historical summary
41- `end_time` (string): End time for historical summary
42
43**Use when:** Getting high-level network overview, distribution analysis, capacity planning.
44
45### 3. `suzieq_assert`
46
47Run validation assertions against network state. Checks conditions like "all BGP peers established" or "no interface errors".
48
49- `table` (string, required): Must be one of: bgp, ospf, interface, evpnVni
50- `namespace` (string): Filter by SuzieQ namespace
51- `hostname` (string): Filter by device hostname
52
53**Use when:** Validating network health, pre/post-change verification, compliance checks.
54
55### 4. `suzieq_unique`
56
57Get distinct values and their counts for a specific column in a SuzieQ table.
58
59- `table` (string, required): SuzieQ table name
60- `column` (string, required): Column name to get unique values for
61- `namespace` (string): Filter by SuzieQ namespace
62- `hostname` (string): Filter by device hostname
63
64**Use when:** Understanding value distributions (unique VRFs, BGP states, interface types).
65
66### 5. `suzieq_path`
67
68Trace the forwarding path between two endpoints through the network.
69
70- `namespace` (string, required): SuzieQ namespace
71- `source` (string, required): Source IP address
72- `destination` (string, required): Destination IP address
73- `vrf` (string): VRF name (default: "default")
74
75**Use when:** Troubleshooting connectivity, verifying forwarding paths, path analysis.
76
77## Workflow
78
791. Start with `suzieq_show` or `suzieq_summarize` to understand current network state
802. Use `suzieq_assert` to validate health (BGP established, OSPF full, interfaces up)
813. Use `suzieq_unique` to explore value distributions for specific columns
824. Use `suzieq_path` to trace forwarding paths between endpoints
835. Use `start_time`/`end_time` on show/summarize for time-travel historical analysis
84
85## Supported Tables
86
87address, arpnd, bgp, device, devconfig, evpnVni, fs, ifCounters, interface, inventory, lldp, mac, mlag, namespace, network, ospf, route, sqPoller, topology, vlan