Command-line tool for managing BandwagonHost (KiwiVM) VPS instances
bwg-cli exposes 11 tools with basic schemas and descriptions, but falls short of production quality. Tool names lack consistent verb-noun structure (e.g., 'server ls' instead of 'list_servers'). Descriptions are present but generic (avg ~60 chars, well below the 194-char baseline). Parameter descriptions exist but are minimal. No output schemas documented. Error handling is absent from tool definitions. The server is a CLI wrapper around KiwiVM API; tool definitions appear inferred from Cobra command structure rather than explicitly registered with rich metadata. This limits per-tool scores to ~50 maximum per the rubric's inference penalty.
Call a KiwiVM endpoint directly and print the raw response
List every endpoint with its risk classification
KiwiVM control-panel audit log
Add a server to the fleet
Verify server credentials against the API
Show or set the default server
Import servers from a CSV file
List configured servers
Tool names do not follow verb_noun convention. 'server ls', 'server add', 'server rm' use CLI-style subcommands instead of LLM-friendly names like 'list_servers', 'create_server', 'delete_server'. LLMs struggle to infer intent from multi-word positional names.
No output schemas documented. Tool descriptions mention JSON shape (e.g., 'server ls' returns {servers, default, configPath}) but no formal schema is provided. LLMs cannot plan downstream calls or extract fields reliably.
Parameter descriptions are minimal (avg ~30 chars). E.g., 'tag' is described as 'Tag for fleet filtering (repeatable)' without explaining what tags are used for, valid formats, or examples. Descriptions should be 50-200 chars with context.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 40 | 2026-07-28+ | v2 |
Remove a server from the fleet
Change a stored server's settings
Show one server's stored settings
No error handling guidance in tool definitions. Tools like 'server add' and 'api call' can fail (invalid credentials, network errors, API rejection) but definitions provide no recovery hints or error classification.
Tool definitions appear inferred from Cobra CLI structure rather than explicitly registered with MCP metadata. No evidence of formal tool registration with input/output schemas in the source. This limits confidence in schema completeness.