Full-featured local MCP server — filesystem, git, network, shell, search
Server exposes 48 tools across filesystem, git, network, shell, postgres, and system domains. Critical gaps: most tools lack visible input schemas in source (only traceroute shows explicit schema). Descriptions are present but generic (10-50 chars typical). No parameter descriptions visible. Error handling is basic. Tool names follow verb_noun convention (readFile, gitStatus, httpRequest) but lack specificity for disambiguation. No tool annotations (readOnlyHint, destructiveHint) despite high-risk operations (deletePath, killProcess, runCommand). Output schemas undocumented. This is a broad-capability server with poor LLM-readiness, agents will struggle to understand when/how to use tools.
Input schemas not visible in source code for 47/48 tools. Only traceroute shows explicit schema definition. Cannot verify parameter types, constraints, or descriptions. This violates pattern:constrained-input and pattern:tool-description.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 30 | <=2025-11-25 | v2 |
Trace the network path to a host.
Destructive/irreversible tools (deletePath, killProcess, runCommand, gitPush, gitCommit) lack tool annotations (destructiveHint) and confirmation/dry-run support. Agents cannot distinguish safe from dangerous operations. Violates pattern:confirmation-request.
Tool descriptions are generic and under 50 characters (e.g., 'Read a file', 'List directory'). No context on WHEN to use each tool, prerequisites, or return structure. Violates pattern:tool-description baseline of 50-200 chars.
No output schemas documented. LLMs cannot predict what fields to expect or plan downstream tool calls. Violates pattern:response-shaper and pattern:tool-chain.
Ambiguous tool names: 'open' (open what? file? URL? application?), 'ps' (POSIX ps or custom?), 'which' (which command?). Names do not clearly convey action. Violates pattern:tool naming baseline.