Shell and file access MCP server for the homelab ops agent
Server exposes 7 tools with clear verb-noun naming (run_command, read_file, write_file, etc.). All tools have descriptions (10 - 200 chars, within baseline 34 - 392 range). Input schemas are present with type definitions and parameter descriptions. However, output schemas are not documented, LLMs cannot predict return structure. Error handling is minimal; tools return raw OS errors without recovery guidance. No tool annotations (readOnlyHint/destructiveHint) despite clear risk levels. Parameter descriptions lack format constraints (e.g., timeout range, path validation rules). Missing idempotency guidance for write operations.
Edit a file by applying a unified diff patch
List running processes on the system with metadata
List the contents of a directory at an absolute path
Read the contents of a file at an absolute path
Read the contents of multiple files at absolute paths
Execute a shell command and return its output, exit code, and execution metadata
Write content to a file at an absolute path, creating or overwriting it
Output schemas not documented. LLMs cannot predict return structure (fields, types, pagination). Baseline: 100% of A+ tools document return types.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite explicit risk levels (READ_ONLY, WRITE, IRREVERSIBLE). Agents cannot reason about side effects.
Error handling returns raw OS errors without recovery guidance. 'File not found' should suggest alternatives or next steps. Baseline: error responses must tell LLM what to do next.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | C | 63 | <=2025-11-25 | v2 |
Parameter descriptions lack format constraints. 'timeout' has no range (e.g., 1 - 3600 seconds). 'path' has no validation rule (absolute vs relative). Baseline: constraints must be explicit in descriptions.
No idempotency guidance for write operations (write_file, edit_file). Agents retrying on ambiguous failures risk duplicate writes. Baseline: non-idempotent tools must document retry behavior.