Skip to main content
Glama
WYRE-AI
by WYRE-AI

unifi_query_isp_metrics

Retrieve WAN/ISP health and traffic metrics for specified host/site pairs and time ranges from UniFi Cloud Site Manager.

Instructions

Get WAN/ISP health and traffic metrics for specific host/site pairs and time ranges. A filtered read, not a mutation, despite being a POST on UniFi's API. If the API key lacks access to a requested site, the response reports status:partialSuccess for a mixed result or fails outright if none are accessible.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeYesMetric interval.
sitesYesHost/site pairs to query, each with an optional time range.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A3.8/5.0
Behavior4/5

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

With no annotations provided, the description carries the full behavioral burden and handles it well: it discloses that the operation is 'a filtered read, not a mutation, despite being a POST' and details the partialSuccess/outright-failure auth semantics. This preempts two likely agent misjudgments — assuming POST implies a write and assuming failures are uniform.

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

Conciseness5/5

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

Two sentences with zero filler: the core purpose is front-loaded first, followed by the POST-method caveat, then the failure semantics. Every clause earns its place and nothing repeats what the schema already states.

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

Completeness4/5

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

For a 2-parameter tool with a complete schema and no output schema, the description covers purpose, interface-safety context, and error behavior. The remaining gaps are minor: typical response contents and default behavior when beginTimestamp/endTimestamp are omitted.

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

Parameters3/5

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

Schema description coverage is 100%, so the interval enum and host/site pairs with optional time ranges are already documented in the schema. The description's 'host/site pairs and time ranges' phrasing reinforces the parameters but does not materially extend their meaning, placing it at the baseline 3 for fully-covered schemas.

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

Purpose4/5

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

The description states a specific verb and resource: 'Get WAN/ISP health and traffic metrics' scoped to 'specific host/site pairs and time ranges.' This clearly identifies what the tool does, but it does not explicitly distinguish itself from the near-twin sibling unifi_get_isp_metrics, so it falls just short of full sibling differentiation.

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

Usage Guidelines3/5

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

The scoping phrase 'for specific host/site pairs and time ranges' implies the usage context, and calling it a 'filtered read' hints at selection logic. However, no alternative tools are named and no explicit when-to-use versus when-not-to-use guidance is provided, so the agent must infer the routing decision among siblings.

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