MCP server for accessing VM command line with web tunneling
Two tools with basic schemas but significant quality gaps. execute_command has a minimal 1-param schema with adequate description. start_tunnel has 2 optional params with defaults but lacks clarity on side effects and tunnel lifecycle. Neither tool has output schema documentation. Parameter descriptions are present but generic. No error recovery guidance. Missing idempotency hints for a destructive tool (execute_command). Tool composition is weak, no batch operations, no pagination, no chaining IDs in responses.
Execute a shell command on the VM
Start a web tunnel to access the VM interface
execute_command marked IRREVERSIBLE but lacks confirmation/dry-run pattern. No guidance on retryability or idempotency. LLM may retry destructive commands, causing duplicate side effects.
No output schema documented for either tool. LLMs cannot plan downstream calls or extract structured data. Responses are free-text, requiring parsing.
start_tunnel description omits side effects (closes existing tunnel, starts web server). LLM cannot reason about state changes or prerequisites.
execute_command uses 2-second timeout to collect output. Long-running commands will be truncated silently. No guidance on async execution or polling.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 62 | 2026-07-28+ | v2 |
Parameter 'subdomain' in start_tunnel is optional but no guidance on default behavior or naming constraints. LLM may pass invalid subdomains.