Skip to main content
Glama

Explain one finding

explain_finding
Read-onlyIdempotent

Explain one gate finding by ID: which check fired, the rule and reason, file/line/target, one-sentence fix, and whether it is still open.

Instructions

Explain one gate finding by its id (from list_gate_findings, get_radar, get_recipe_drift, get_code_health, get_store_status or the console): which check raised it and what that check is for, the rule, why it fired (reason), the file, line and column or the target it is about, the fix in one sentence (fix.text, with fix.kind, fix.command, fix.consolePath and the stored fix object in fix.detail), and whether it is still open: state open (in the latest run of that check, the latest run found the same problem in the same file or target, or no finished run has looked again yet), not_in_latest_run (the latest run checked that rule clean and no longer has it: fixed or moved), unknown (the latest run could not confirm a fix: it errored or skipped, stored only part of its findings, did not run or could not decide the rule, or read only part of the project; stateReason says which) or allowlisted. The latest run is the newest one that looked at the same thing: a design server scan is compared only with server scans and a CI push only with CI pushes, and a run scoped to another story is skipped. Treat unknown as still open. A finding in a project the key cannot reach is a 404. Returns { id, projectId, gate, gateLabel, gateMeaning, ruleId, rule, severity, reason, fix, location, state, stateReason, run, latestRun }. Read-only.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
findingIdYesGate finding id (the id field of a finding in list_gate_findings, get_radar, get_code_health…)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.14

TDQS

A4.5/5.0
Behavior5/5

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

Beyond the readOnly/idempotent annotations, the description discloses the state machine (open/not_in_latest_run/unknown/allowlisted), how the 'latest run' is matched (design-server vs server scans, CI vs CI pushes, other-story scopes skipped), the guidance to treat unknown as open, and the 404 for inaccessible projects. That is substantial behavioral context the annotations do not carry.

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

Conciseness3/5

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

The content is front-loaded and mostly earns its place, but it is delivered as one enormous run-on sentence with deeply nested parenthetical clauses about state semantics, which is hard to parse. Structure could be broken into separate lines for state, fix, and location.

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 no output schema, the description compensates by enumerating the full return shape ({ id, projectId, gate, gateLabel, ruleId, rule, severity, reason, fix, location, state, stateReason, run, latestRun }) and the nested fix fields. An agent has everything needed to call and interpret the result.

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, but the description adds the provenance of the id and ties it to the specific source tools, giving the agent more than the schema's format/pattern constraint alone.

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 ('explain one gate finding by its id') and enumerates exactly what the explanation contains: the raising check, rule, reason, location, fix, and lifecycle state. It also names the sibling tools that produce the id, so an agent can distinguish it from get_fix_context or suggest_fix.

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?

It clearly says where the id comes from (list_gate_findings, get_radar, get_recipe_drift, get_code_health, get_store_status, or the console) and when a finding is unreachable (404). It does not explicitly contrast itself with adjacent tools like get_fix_context, so it falls short of a full when/when-not statement.

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