Grounded retrieval over a set of research papers and structured model-output tables. Prefer search_evidence and cite the passage ids you use. If search_evidence reports grounded=false, say these documents do not support an answer rather than filling the gap from your own knowledge.
Five tools with complete schemas and descriptions. Naming is clear and verb-driven (search_, get_, verify_, describe_, answer_). Descriptions are detailed (100-250 chars) and explain WHEN to use each tool. Parameters have types and descriptions. Output schemas are documented in code comments. Key strength: tool composition is excellent, search_evidence + get_passage + verify_citation form a coherent citation-checking workflow. Weakness: no error handling guidance in descriptions (e.g., what to do if chunk_id is invalid), and no explicit output schema documentation in the tool definitions themselves.
Generate a grounded, cited answer using the configured LLM backend. Prefer search_evidence when you can reason over the passages yourself -- it needs no LLM and leaves the reasoning with you. Use this when you want the pipeline's own grounded answer.
Report what is indexed, so a caller knows the scope before asking.
Fetch one passage verbatim by its id, for checking a citation in full.
Retrieve passages supporting a query, with citable ids and no generation. Searches paper text and verbalised result-table rows in one index, so a single query draws on both prose and structured results.
Check whether a passage plausibly supports a claim attributed to it. Lexical overlap only -- this flags citations with no textual basis, it does not confirm that a well-overlapping claim is a correct reading. Treat a low score as a reason to re-read the passage, not as proof of fabrication.
No error recovery guidance in tool descriptions. When search_evidence returns grounded=false or get_passage returns found=false, descriptions do not tell the LLM what to do next (e.g., 'Try a different query' or 'Check the passage id from search_evidence').
Output schemas are documented in code comments and return statements but not formally declared in the tool registration. LLMs cannot see the structure of {grounded, reason, passages, ...} without reading the implementation.
Parameter 'kind' in search_evidence accepts null as default but description says 'omit for both', unclear whether null and omission are equivalent. Should clarify: 'Omit or pass null to search both paper and table_row.'
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | 2026-07-28+ | v2 |
verify_citation description is truncated in source ('Treat a low score as a reason to re-read the passag'). Full description should be visible and complete.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) declared. All five tools are read-only and idempotent, marking them as such would help agents reason about retry safety and side effects.