Skip to main content
Glama

Index readiness

health
Read-onlyIdempotent

Check local CFR index health before querying: returns ready, stale, degraded, or empty status to prevent wasted tool calls.

Instructions

One-call readiness verdict for the local index: "ready" (query away), "stale" (older than CFR_MAX_AGE_DAYS — verify results against the current eCFR), "degraded" (structure drift — provisions may be missing; verify against the current eCFR), or "empty" (no index yet — run cfr-free sync). Clients should gate queries on this before spending tool calls.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
staleYes
statusYes
syncedAtYes
issueDateYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered. The description adds real value beyond that: the semantics of each state, the remediation for 'empty' (run `cfr-free sync`), and the obligation to verify 'stale'/'degraded' results against the current eCFR. It does not mention latency or whether the check is cheap, so a 4 rather than 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?

Single front-loaded sentence that leads with the verdict concept, then defines each state inline. Dense with nested parentheses and em-dashes, which makes it slightly harder to scan, but no sentence is wasted.

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?

With an output schema present the description need not explain return values, yet it still defines the four verdicts and their follow-up actions — more than enough for a zero-param read tool. The one gap is failing to clarify the boundary with the sibling 'index_status'.

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?

The tool takes zero parameters, so there is nothing for the description to disambiguate; the baseline of 4 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+resource ('one-call readiness verdict for the local index') and enumerates all four possible verdicts with their meanings, so an agent knows exactly what comes back. It does not, however, distinguish itself from the sibling 'index_status', which sounds like an overlapping concept — that ambiguity keeps it from 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 Guidelines4/5

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

'Clients should gate queries on this before spending tool calls' gives an explicit when-to-use rule and even a cost rationale. It stops short of naming an alternative or a when-not-to-use case (e.g., after a sync is known to be fresh), and never mentions the similar-sounding 'index_status' sibling.

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