Skip to main content
Glama

uplink_loss_and_latency_rca

Read-only

Rank MX WAN uplinks by loss and latency to flag degraded links against thresholds, with likely cause and recommended action.

Instructions

[READ] Rank the worst MX WAN uplinks by loss + latency, map cause + action.

The flagship uplink RCA: pulls per-uplink loss/latency across the org (MX
security appliances), ranks the worst uplinks by a composite of average loss
and latency, flags each degraded uplink against the thresholds, and attaches
a likely cause and a recommended action. Every ranking carries its numbers,
not a black-box verdict. Pass 'records' for pure analysis, or an org/target
to pull live.

Args:
    loss_pct: Avg loss %% at/above which an uplink is degraded (default 5.0).
    latency_ms: Avg latency ms at/above which an uplink is degraded (default 150).
    records: Injected uplink series — {serial, networkId, uplink, ip,
        timeSeries:[{lossPercent, latencyMs}]}; skips live collection.
    org_id: Meraki organization id for live pull; omit to use target default.
    limit: Max rows in the ranked list (default 100). The result carries
        'returned'/'limit'/'truncated'; re-run with a higher limit when
        'truncated' is true rather than treating the list as complete.
    target: Target name from config; omit for the default.

Returns dict: {uplinksEvaluated, degradedCount, thresholds, worst:[{serial,
    networkId, uplink, ip, avgLossPct, maxLossPct, avgLatencyMs, maxLatencyMs,
    degraded, cause, action}], returned, limit, truncated, note}.

Input Schema

NameRequiredDescriptionDefault
limitNo
org_idNo
targetNo
recordsNo
loss_pctNo
latency_msNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true, so the safety profile is covered; the description adds useful context beyond that — default degradation thresholds, the 'every ranking carries its numbers, not a black-box verdict' guarantee, and explicit truncation handling via returned/limit/truncated. This meaningfully informs how the agent should interpret and re-run results.

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-loaded with the core verb/scope sentence before the details, and each sentence carries content (scope, ranking method, output contract, param docs). Slightly verbose in repetition of defaults already implied, but no filler.

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?

With no output schema and no annotation detail beyond readOnlyHint, the description carries the full burden and delivers it: it documents the return dict keys (uplinksEvaluated, degradedCount, thresholds, worst[...] with cause/action, truncated) and the analysis-vs-live input modes.

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

Parameters5/5

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

Schema description coverage is 0%, yet the description documents all six parameters: loss_pct and latency_ms defaults, the nested shape of records ({serial, networkId, uplink, ip, timeSeries:[{lossPercent, latencyMs}]}), org_id/target defaults, and limit semantics. This fully compensates for the empty schema.

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?

States a specific verb (rank), resource (MX WAN uplinks), and scope (loss + latency), plus the composite-ranking and cause/action enrichment. An agent can distinguish this from device_uplinks or network_health_score without opening any schema.

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 routes between the two operating modes: 'Pass records for pure analysis, or an org/target to pull live.' That is real usage guidance. However, it never names an alternative sibling tool or says when NOT to use this RCA (e.g. vs. device_uplinks), so it falls short of full when/when-not coverage.

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