CLI/MCP tool for AuroraOS documentation with RAG pipeline, search capabilities, and agent integration.
Aurora-grimoire exposes a single search_docs tool with a reasonably complete input schema and a clear, action-oriented description. However, the tool lacks critical guidance on output structure, error handling, and recovery paths. The schema is present and parameters are typed, but descriptions for individual parameters are sparse or missing altogether. No documentation of what the tool returns, what fields to expect, or how to interpret confidence thresholds. Per-tool analysis follows.
Search Aurora documentation and return JSON results with source links
Output schema is undocumented. The tool description states it returns 'JSON results with source links' but provides no formal schema, no field definitions, and no guidance on pagination, result count limits, or error cases. LLMs cannot reliably parse unstructured responses.
Parameter descriptions are missing or minimal. 'knowledge_threshold' is described as 'Confidence gate: low|medium|high' (terse, enum values buried in description text rather than explicit enum constraint). 'retrieval_mode' similarly lacks expansion. Parameters 'with_content' and 'with_context' lack any description of what content is returned or how it differs.
No error handling or recovery guidance. Tool description does not explain what happens if the query is malformed, if doc_version is not found, if the knowledge base is unreachable, or if reranking fails. LLMs receive no cues for retry logic or fallback strategies.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | C | 62 | 2026-07-28+ | v2 |
| 2026-03-09 | D | 58 | - | v1 |
No guidance on result limits or pagination. 'top_k' parameter is typed as 'usize' with no bounds. Tool description does not state whether results are paginated, what the maximum safe value is, or what happens if top_k exceeds available results. Unbounded numeric parameters invite LLMs to pass absurd values.
Enum values hardcoded in description strings. 'retrieval_mode' and 'knowledge_threshold' state valid values as prose ('hybrid|dense|bm25' and 'low|medium|high') but are not declared as formal enum types in the schema. LLMs cannot reliably parse prose enums and may hallucinate invalid values.