Auto-indexing CLI for claude-context-mcp
claude-context-cli exposes 6 tools with basic schemas and descriptions. All tools have descriptions (10-80 chars, mostly adequate) and input schemas with typed parameters. However, descriptions are terse and lack LLM-optimized guidance on WHEN to use each tool or what happens next. Parameter descriptions are minimal (e.g., 'Path to codebase' repeated 6 times). No output schemas documented. Error handling is present but not recovery-focused. Tool naming is clear (index, search, clear, status, config, info) but generic. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels (WRITE, DESTRUCTIVE, READ_ONLY). Composition is reasonable, each tool has one responsibility, but no guidance on tool chaining or prerequisites.
Remove index for a codebase
Show resolved configuration (walks .mcp.json > ~/.claude.json > ~/.context/.env)
Index a codebase (incremental via Merkle tree)
Show index info: collection stats, file count, last indexed, staleness
Semantic search across indexed codebase
Check index status for a codebase
No output schemas documented. LLMs cannot predict response structure or plan downstream tool calls. E.g., search() returns results with relativePath, startLine, endLine, score, content, none of this is declared in the tool definition.
Descriptions lack LLM-optimized guidance. 'Check index status for a codebase' (40 chars) does not explain WHEN to call status vs info, or what the response contains. Baseline: 194 chars average for A+ tools.
No tool annotations despite explicit risk levels. 'clear' is DESTRUCTIVE but has no destructiveHint. 'search' and 'status' are READ_ONLY but lack readOnlyHint. Agents cannot reason about side effects.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 52 | 2026-07-28+ | v2 |
Parameter descriptions are generic and repeated. 'Path to codebase' appears 6 times with no variation. No guidance on format, constraints, or defaults. Baseline: 72 chars average for A+ param annotations.
Error handling is minimal. CLI exits with process.exit(1) on errors but does not return structured error responses with recovery guidance. E.g., 'Not indexed: <path>' does not suggest next steps.