Skip to main content
Glama

List tool health

list_tools
Read-onlyIdempotent

Every tool on one MCP with its calls, first-call rate, average response size, p95 latency and schema size — the tool-health table. Use this to find which tool is the problem; use get_tool once you know.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
toNoEnd date, inclusive, YYYY-MM-DD (UTC).
mcpYesThe MCP, by name or id. Names are matched case-insensitively; call list_mcps if unsure.
fromNoStart date, YYYY-MM-DD (UTC).
clientsNoNarrow to these client names — `claude-desktop`, `cursor`, `unknown`. Omit for every client. Read the per-client split from get_overview first: one model failing where another succeeds is a tool-description problem, and the server-wide average is what hides it.
last_daysNoWindow ending today, in days — 7 for the last week, 30 for the last month. Ignored when from/to are given.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
rangeYesThe window these figures cover, echoed back.
toolsYesEvery tool, called or not — a tool nobody calls is still registered and still costs its schema.
nightly_as_ofYesThe last day the nightly pass has walked. Retries, first-call success and tool pairs only exist up to here; null means it has not run over this window at all.

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 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 and idempotentHint, so no side-effect disclosure is needed. The description adds useful behavioral context by specifying exactly what kind of aggregate data the table contains and that it is scoped to one MCP, going beyond the bare annotations.

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 no wasted words: the first defines the output and scope, the second gives the usage workflow and the sibling alternative. The key information is front-loaded.

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 an output schema present, rich per-parameter schema descriptions, and annotations covering read-only and idempotent behavior, the description is complete for an agent to select and invoke the tool correctly. The workflow guidance and metric list fill the remaining gaps.

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%, and each parameter already has meaningful descriptions, so the description does not need to repeat parameter semantics. The prose adds only a high-level hint that the table is scoped to one MCP, but no additional parameter-level meaning beyond what the schema provides.

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?

The description clearly states the resource (every tool on one MCP), the specific metrics returned (calls, first-call rate, average response size, p95 latency, schema size), and frames it as a tool-health table. It also distinguishes itself from get_tool by saying to use get_tool once you know which tool is the problem.

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?

The description gives explicit usage guidance: use this tool to find which tool is the problem, then use get_tool once you know. This directly routes an agent to the correct alternative at the right stage of the workflow.

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