Skip to main content
Glama
Metrx MCP Server

Metrx MCP Server

by metrxbots

Get Agent Rankings

metrx_get_rankings
Read-onlyIdempotent

Retrieve agents ranked by health score to identify top and bottom performers, with grades, composite scores, data completeness, and stale flags.

Instructions

Returns agents ranked by health score, best first. Each row has the agent key and name, grade (A-F), composite score on a 0-1 scale (a stored score when one exists, otherwise computed live from the last 30 days of metrics), data completeness (share of score inputs that had data; 0 = no data at all) and a stale flag (no call in the last 48 hours). Fleet averages are computed here from the returned rows. Use this to identify top and bottom performers. Requires an API key with the 'read' scope.

Tool call template

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "metrx_get_rankings"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNoMaximum number of agents to show (default: 20)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.5.0

TDQS

A3.9/5.0
Behavior5/5

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

Goes well past the readOnly/idempotent annotations: it discloses that composite scores may be stored or computed live over a 30-day window, defines data completeness (0 = no data), defines the stale flag as no call in 48 hours, notes fleet averages are derived from returned rows, and states the required 'read' scope. That is exactly the extra context annotations cannot carry.

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 behavior and ordered logically: ranking, row fields, derived averages, use case, auth. The long parenthetical list of fields is dense but each clause carries real information; nothing is filler.

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, so the description takes on the burden of describing return fields and does so for all five. Only minor gaps remain, such as what happens when aggregates are computed from a truncated row set.

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?

With a single parameter at 100% schema description coverage, the schema already documents limit, its default and its maximum. The description adds no further meaning about limit (e.g. whether truncation is silent), so the baseline 3 applies.

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?

States a specific verb and resource ('Returns agents ranked by health score, best first') plus the row shape, so the agent knows exactly what comes back. It does not distinguish itself from the sibling metrx_get_health_scores, which by name sounds like it could serve a similar ranking need, so it falls short of a 5.

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?

'Use this to identify top and bottom performers' gives an implied use case, but there is no when-not guidance and no named alternative (e.g. per-agent drilldown via metrx_get_agent_detail). Adequate but with a clear routing gap.

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