Three tools with basic schemas and descriptions, but significant gaps in parameter documentation and output schema clarity. view_buffers has no parameters (empty schema is valid but limits flexibility). send_normal_mode and send_command_mode have single required string parameters with minimal descriptions. No output schemas documented for any tool. Descriptions are present but generic (10-194 chars baseline; these range 50-180 chars). No error handling guidance, no parameter constraints (enums, ranges), no idempotency hints for write operations. Tool names follow verb_noun pattern (good), but lack clarity on side effects and recovery paths.
Execute a command in Neovim's command mode and get the output
Send keystrokes to Neovim in normal mode
View the visible portion of buffers in Neovim with cursor position. Shows approximately ±100 lines around the cursor position rather than the entire file. The cursor position is marked with a 🔸 emoji. Clearly identifies the active buffer (the one that will be affected by normal mode commands) with a 🟢 indicator.
No output schemas documented for any tool. LLMs cannot infer what fields to expect in responses, blocking downstream tool chaining and forcing unstructured parsing.
send_normal_mode and send_command_mode lack parameter descriptions beyond the parameter name. 'keys' and 'command' are ambiguous, what format? What constraints? What happens on error?
No error handling guidance. Tools that modify state (send_normal_mode, send_command_mode) do not document failure modes, recovery steps, or whether operations are idempotent. Agents cannot safely retry.
No parameter constraints (enums, ranges, patterns). 'keys' parameter accepts any string, LLMs may pass invalid Neovim keybindings. 'command' accepts any string, no validation hints for Neovim command syntax.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 48 | 2026-07-28+ | v2 |
view_buffers has empty input schema (no parameters). While valid, this limits future extensibility (e.g., filtering by buffer name, limiting line count). Consider adding optional parameters for flexibility.