Batched file operations for autonomous Claude Code runs. Collapses N reads/greps/globs into one Bash round-trip.
This MCP server exposes 4 tools for managing MCP daemon lifecycle. All tools have descriptions and basic input schemas, but critical gaps undermine quality: (1) Tool names lack action verbs, 'mcp_daemon', 'mcp_status', 'mcp_stop', 'mcp_stop_all' are noun-heavy and ambiguous about intent. 'mcp_daemon' could mean 'get_daemon' or 'start_daemon'; only context reveals it starts. (2) Parameter descriptions are minimal or absent. 'SERVER_NAME' has a description, but 'detach' is described only as 'Run in background', no guidance on when to use it or what happens if omitted. (3) Output schemas are completely undocumented. What does mcp_status return? What fields? What types? The tool description says 'List running MCP daemons: name, pid, uptime, idle, socket' but no schema is visible. (4) Error handling is absent, no guidance on what happens if a daemon fails to start, if a server name is invalid, or how to recover. (5) No idempotency guarantees or safety annotations. mcp_stop and mcp_stop_all are destructive but lack explicit warnings or confirmation patterns. Baseline: 90% of A+ tools start with action verbs; 100% have documented return types; 100% have param descriptions. This server meets none of these.
Start MCP daemon for SERVER_NAME. Blocking; --detach to background.
List running MCP daemons: name, pid, uptime, idle, socket.
Stop MCP daemon SERVER_NAME. SIGTERM, SIGKILL after 3s. `mcp_stop:--all` also reaches the same stop-everything code path as mcp_stop_all (#1315), but mcp_stop_all is the canonical spelling -- use that one directly rather than passing --all as a SERVER_NAME here.
Stop every supertool MCP daemon. Canonical op for this (#1315) -- mcp_stop:--all reaches the identical code path but is an undeclared alias, not a separate mode.
Tool names lack action verbs. 'mcp_daemon' is ambiguous, does it get, start, or manage a daemon? Should be 'start_mcp_daemon' or 'get_mcp_daemon_status'. LLMs cannot infer intent from noun-heavy names.
Output schemas completely undocumented. mcp_status description says 'List running MCP daemons: name, pid, uptime, idle, socket' but no schema visible. LLMs cannot plan downstream calls or extract fields without knowing return structure.
Destructive operations (mcp_stop, mcp_stop_all) lack confirmation or dry-run patterns. No safety annotations visible. Agents can terminate critical daemons without warning or recovery guidance.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 42 | 2026-07-28+ | v2 |
Parameter 'detach' in mcp_daemon has minimal description ('Run in background'). No guidance on default behavior, when to use, or consequences. LLMs cannot reason about blocking vs non-blocking semantics.
No error handling or recovery guidance. What happens if SERVER_NAME is invalid? If daemon fails to start? If socket creation fails? LLMs receive no actionable error messages.