Skip to main content
Glama
sagarv48

Knowledge Fabric

explain_retrieval

Trace retrieval performance by explaining candidate counts, per-leg latencies, fusion scores, and degradation status for a query, without writing audit logs.

Instructions

Return diagnostic tracing and candidate scoring explanations for a query.

Explains candidate counts, per-leg latencies, fusion scores, and degradation status without persisting audit logs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeNohybrid
top_kNo
tenant_idNo
query_textYes
source_typeNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

B3.2/5.0
Behavior3/5

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

No annotations are present, so the description carries the full behavioral burden. It does disclose one meaningful side-effect constraint—'without persisting audit logs'—but it does not explicitly state whether the tool is read-only or whether it executes a live retrieval with its own cost/latency. This is partial transparency, not complete.

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?

The description is compact and front-loaded, with the core purpose in the first sentence and an important no-audit-log caveat in the second. The slight overlap between 'diagnostic tracing and candidate scoring explanations' and the subsequent enumeration of those components is acceptable and not wasteful.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With five parameters, zero schema parameter descriptions, and no annotations, the description is incomplete as an operational contract. The output schema likely covers return structure, but the agent still lacks essential guidance on how mode, tenant_id, and source_type change the behavior of the tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description adds no meaning for any of the five parameters. It never explains how mode, top_k, tenant_id, source_type, or query_text affect the diagnostic output; it only describes what is returned, leaving the agent to guess parameter behavior.

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 first sentence names a specific verb-resource pair: 'Return diagnostic tracing and candidate scoring explanations for a query.' The second sentence enumerates concrete outputs (candidate counts, per-leg latencies, fusion scores, degradation status), which clearly distinguishes this from sibling tools like retrieve_evidence or health_check.

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?

The diagnostic framing implies when the tool should be used, but the description never explicitly says 'use this when you need to explain or trace retrieval, not when you need actual evidence.' It gives no alternatives or when-not conditions, so an agent must infer the intended selection.

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