MCP server wrapper for vc-database. Exposes vectorizer search and management tools over stdio.
Three tools with basic schemas and descriptions, but significant gaps in parameter documentation, output schema clarity, and error handling guidance. Tool names follow verb_noun convention (vectorize, vectorize_file, list_databases), which is good. However, descriptions lack actionable context for LLM selection, parameter descriptions are minimal or missing, and output structures are undocumented. No error recovery guidance. Schemas present but incomplete, top_k has a default but no min/max bounds; source_filename lacks format constraints or validation hints.
List all available vector databases with their entry counts.
Search all vector databases for operations matching a natural-language query.
Rebuild the vector index for a single source file.
Output schemas undocumented. vectorize() returns JSON string with unknown structure; LLMs cannot plan downstream calls or extract fields reliably. No documentation of result fields (entry, opcode, similarity, database, kind, module_name, module_id, op_name, params, signature).
Parameter descriptions missing or trivial. 'top_k' has description but no min/max bounds (unbounded integers invite absurd values). 'source_filename' lacks format hints (.txt extension requirement, valid filename constraints). 'query' description is generic.
Error handling provides no recovery guidance. vectorize_file returns JSON error for missing file, but LLM has no hint on next steps (list_databases? check path?). No categorization of errors as retryable vs fatal.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 46 | 2026-07-28+ | v2 |
Tool descriptions lack WHEN/WHY context. 'Search all vector databases for operations matching a natural-language query' does not explain when to use vectorize vs vectorize_file, what prerequisites exist, or what the results enable. LLMs cannot disambiguate.
No pagination or result limits documented. vectorize() accepts top_k but list_databases() has no limit parameter. If vector databases grow large, responses could bloat context. No guidance on expected result size or pagination strategy.