Agentic RAG orchestration service with graph retrieval and MCP tools for permissioned read-only knowledge access
Two tools with minimal but present descriptions and basic parameter schemas. Both tools have clear verb-noun naming (local_search, entity_lookup) and accept single string parameters. However, descriptions are terse (under 100 chars), lack context on when to use each tool, and do not explain output structure. No parameter descriptions beyond the query field itself. Output schemas are inferred from code (list of dicts with id/title/excerpt/score for search; name/kind/description/related/score for lookup) but not formally documented. Error handling is minimal, PermissionError raised but no guidance on recovery. No pagination support despite returning lists. Security is reasonable (read-only, allowlisted) but not explicitly documented in tool metadata.
Traverse the local entity relationship graph. Read-only and allowlisted.
Search the local document index. Read-only and allowlisted.
Parameter descriptions missing. 'query' parameter has no description explaining what kind of search queries are valid, expected format, or examples.
Output schemas not formally documented. Return types inferred from code (list[dict]) but LLM cannot see field names, types, or required fields without reading implementation.
Tool descriptions lack context on when to use each tool. Both are under 100 chars and do not explain the difference between document search and entity graph traversal, or when an LLM should choose one over the other.
No pagination support. Tools return lists but accept no limit/offset/page parameters. Large result sets will blow context window.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Error handling provides no recovery guidance. PermissionError is raised but LLM receives no hint on what to do next or how to resolve the permission issue.