Skip to main content
Glama

gateway_health_rca

Read-only

Rank WAN gateways by packet loss and latency, flag down or degraded links, then map each to a likely cause and recommended action.

Instructions

[READ] Rank gateways by loss + latency, map each down/degraded one to cause + action.

The flagship WAN RCA: pulls gateway status, flags each gateway that is down (status down/offline or 100% loss) or degraded (loss/latency over threshold), ranks worst-first, and attaches a likely cause and a recommended action. Every ranking carries its numbers, not a black-box verdict. Pass 'gateways' for pure analysis, or a target to pull live.

Args: loss_pct: Loss %% at/above which a gateway is degraded (default 5.0). latency_ms: RTT ms at/above which a gateway is degraded (default 150). gateways: Injected rows {name, address, status, lossPercent, rttMs}; skips the live pull. target: Firewall target name from config; omit for the default.

Returns dict: {gatewaysEvaluated, downCount, degradedCount, thresholds, worst:[{name, address, status, lossPercent, rttMs, down, degraded, cause, action}], note}.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
targetNo
gatewaysNo
loss_pctNo
latency_msNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.8.0

TDQS

A4.4/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint=true, so safety is covered; the description goes further by disclosing the threshold defaults (5% loss, 150ms RTT), the live-pull-vs-injected-rows behavior, and the fact that rankings carry raw numbers rather than a black-box verdict. It does not mention rate limits or auth requirements, so it isn't exhaustive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the core operation and its [READ] tag, then layers behavior, args, and returns in an easy-to-scan structure. Slightly long with minor redundancy between the opening line and the follow-up paragraph, but every section earns its place.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description's return-value documentation (gatewaysEvaluated, downCount, degradedCount, thresholds, worst[] with cause/action) is essential and present. All four parameters are explained and the read-only nature is clear, leaving nothing an agent needs missing.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the burden, and it largely does: it defines loss_pct and latency_ms as degradation thresholds with defaults, spells out the shape of injected 'gateways' rows ({name, address, status, lossPercent, rttMs}), and describes 'target' as a config firewall name. That's substantially more meaning than the bare schema types provide.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Opens with a specific verb+resource (rank gateways by loss+latency) plus the distinctive RCA behavior (map each down/degraded gateway to cause + action). This clearly separates it from the raw-status sibling 'gateway_status' without needing to name it, since ranking and root-cause attribution are the differentiating actions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells the agent the two usage modes: pass 'gateways' for pure analysis of injected rows, or a target for a live pull. That's clear context, but it names no alternatives or exclusions (e.g., 'for raw status without RCA, use gateway_status'), so it stops short of full when/when-not guidance.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.