Skip to main content
Glama

List Metrics

list_metrics
Read-onlyIdempotent

List available metrics, one entry per (service, metric) pair — a metric emitted by three services returns three entries, each with that service's own type, unit, description, temporality, monotonicity, and last-seen timestamp.

Use this to discover what metrics exist, and which services emit them, before calling metrics. Each entry's singular "service" field names the emitting service; its "lastSeen" is that service's last-seen timestamp for the metric, so you can spot a service that has stopped emitting a metric it used to (dead-emitter detection) even while other services keep emitting it.

Params: service: optional — filter to entries for a specific service name. from / to: optional ISO-8601 window — restrict to entries seen within the range.

Returns: array of metric summaries, one per (service, metric) pair.

Input Schema

NameRequiredDescriptionDefault
toNoEnd of window, ISO-8601 instant (exclusive)
fromNoStart of window, ISO-8601 instant (inclusive)
serviceNoFilter to a specific service name

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / $schema
      Added value: +"https://json-schema.org/draft/2020-12/schema"
    • removedInput schema / additionalProperties
      Removed value: -false
  2. Added
  3. Removed
  4. First observed

TDQS

A4.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, so safety is covered. The description adds genuinely non-obvious behavior: the per-(service, metric) deduplication semantics and the fact that each entry's lastSeen is service-scoped, enabling dead-emitter detection. It stops short of stating result limits, ordering, or pagination, which keeps it from a 5.

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 critical grain and routing information, and the dead-emitter use case earns its space by explaining why lastSeen matters. The trailing Params section is partly redundant given 100% schema coverage, and the Returns line restates the opening sentence, so it is efficient but not waste-free.

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?

There is no output schema, and the description compensates by describing the return shape ('array of metric summaries, one per (service, metric) pair') and enumerating the fields each entry carries (type, unit, description, temporality, monotonicity, lastSeen). Only result ordering and any cap on the number of returned pairs are left unaddressed.

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 coverage is 100%, so the baseline is 3. The description adds real meaning beyond the schema by clarifying what the from/to window actually filters on — 'entries seen within the range', i.e. last-seen time rather than metric values — which the schema's generic 'Start of window' text does not convey. The `service` explanation largely repeats the 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 and resource ('List available metrics') and immediately defines the grain of the result: one entry per (service, metric) pair, with a concrete example of a metric emitted by three services yielding three entries. This is distinguishable at a glance from the sibling `metrics` tool, which is named explicitly.

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

Usage Guidelines5/5

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

Explicitly routes the agent: 'Use this to discover what metrics exist, and which services emit them, before calling metrics.' The alternative (`metrics`) and the condition that selects it (discovery first, query after) are both stated, so the agent does not have to infer the relationship between the two sibling tools.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources