MCP server for Vim that provides tools to interact with buffer content and text selection
Three tools with minimal descriptions (10-30 chars each) and no parameter descriptions. All schemas present but trivial (empty objects for 2/3 tools). No error handling guidance, no output schema documentation, no security considerations. Tool names follow verb_noun pattern but descriptions lack context for LLM selection. No indication of idempotency, side effects, or recovery paths.
Get the current buffer content.
Get the current selected content.
Replace the current buffer content.
All tool descriptions are under 20 characters and lack context. 'Get the current buffer content.' does not explain when to use this vs get_selected_content, what format is returned, or prerequisites.
No parameter descriptions. replace_current_buffer_content accepts 'content' array but does not document expected line format, max size, encoding, or behavior on empty input.
No output schema documented. Tools return JSON strings but LLMs cannot infer structure. get_current_buffer_content returns array of strings but this is not declared in tool metadata.
replace_current_buffer_content is destructive but has no confirmation step, dry-run option, or error recovery guidance. No indication in description that this modifies state irreversibly.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 43 | 2026-07-28+ | v2 |
Error handling is generic ('Error in tool X: {err}'). Does not categorize errors as retryable, user-fixable, or fatal. LLM cannot determine recovery strategy.