Two tools with clear naming (retrieve, recall) and reasonable descriptions (100-150 chars each). Both have documented input schemas with required parameters and type definitions. However, output schemas are completely undocumented, the code shows only input validation, not what the tools return. Parameter descriptions are present but minimal (e.g., 'top_k' lacks range/bounds). No error handling guidance, no recovery patterns, and no indication of how results are structured for downstream tool chaining. The tools appear to be read-only knowledge/memory lookups, but this is not explicitly stated in descriptions. Missing: output schema documentation, parameter constraints (e.g., limit 1-10 for recall), error recovery guidance, and idempotency hints.
Search the agent's memory for relevant past interactions and knowledge. Use this when you need context from prior conversations or stored facts.
Retrieve relevant knowledge chunks from the agent's external knowledge base. Use this when the user asks about topics that the KB may cover. Always cite the source file in the answer.
Output schemas completely undocumented. Code shows input validation but no documentation of what retrieve() and recall() return (fields, types, structure). LLMs cannot plan downstream tool calls or extract data without knowing response shape.
Parameter 'top_k' (retrieve) and 'limit' (recall) lack numeric bounds. Descriptions do not specify min/max values. LLMs may pass absurd values (e.g., top_k=10000) that break performance or API limits.
No error handling guidance. Descriptions do not explain what happens on failure (query not found, KB unavailable, etc.) or how the LLM should recover. Missing recovery patterns.
Tool descriptions do not explicitly state read-only semantics or idempotency. LLMs cannot determine if these tools are safe to retry or if they have side effects.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 56 | <=2025-11-25 | v2 |
No tool composition hints. Descriptions do not explain when to use retrieve vs recall, or what IDs/references are returned for chaining to other tools.