Version-aware code intelligence MCP server that provides code search, tracing, and analysis across multiple versions of a codebase
vacmcp defines 6 tools with basic descriptions and partial schemas. All tools follow verb_noun naming (search_code, trace_calls, get_code, list_contexts, compare_versions, search_history). Descriptions are present but minimal (10-60 chars), below the 50-200 char LLM-optimized baseline. Input schemas are visible for most tools with type and description fields, but output schemas are not documented. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite all being READ_ONLY. Error handling and recovery guidance are absent. Parameter descriptions are sparse, e.g., 'context' is described as 'The version context ID' but lacks guidance on how to discover valid context IDs or what happens if an invalid one is passed.
Compare code differences between two version contexts
Retrieve source code content from a specific file and line range in a version context
List all available version contexts configured in the server
Search for code patterns across a version context
Search through commit history and changes across versions
Trace function calls and dependencies within a version context
Descriptions are too brief (10-60 chars vs. 50-200 char baseline). LLMs cannot determine when to select each tool or what distinguishes search_code from search_history.
Output schemas are not documented. LLMs cannot plan downstream tool calls or extract required fields (e.g., does list_contexts return context IDs that search_code accepts?).
No tool annotations despite all tools being READ_ONLY. Missing readOnlyHint prevents agents from understanding which tools are safe to call without side effects.
Inferred effective spec: 2026-07-28+.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
Parameter descriptions lack actionable constraints. 'context' parameter has no guidance on valid values, format, or how to discover them. 'query' lacks length/pattern constraints.
No error handling or recovery guidance. Tools lack descriptions of failure modes (e.g., invalid context ID, malformed query) or what the agent should do next.