wake-mcp provides 7 tools with clear naming and reasonably documented schemas. All tools follow verb_noun patterns (wake_status, wake_log, wake_list_commands, wake_get_output, wake_search, wake_dump, wake_annotate). Input schemas are explicitly visible and properly structured with JSON Schema. However, parameter descriptions are sparse or missing entirely in several tools, and output schemas are completely undocumented, a critical gap. The tool names are action-oriented and unambiguous, which is a strength. Descriptions range from adequate to good (44-261 chars), meeting baseline expectations. The primary weaknesses are: (1) no output schema documentation for any tool, violating the pattern:tool and pattern:response-shaper requirements; (2) missing or minimal parameter descriptions in several fields (e.g., session_id in wake_dump has no description despite being optional); (3) no error handling guidance, tools return results but provide no recovery paths if operations fail; (4) wake_annotate is the only write operation but lacks any confirmation/safety mechanism despite being able to mutate state.
Add a note/annotation to the current terminal session
Export a terminal session as markdown context, including all commands and outputs
Get full output for specific command IDs. Use after wake_list_commands to fetch output for commands of interest.
List recent commands with metadata only (no full output). Returns id, command, exit_code, output_bytes, and summary. Use wake_get_output to fetch full output for specific commands.
Get recent commands with their output from terminal sessions
Search command history by command text or output content
Get current or most recent terminal session status
No output schemas documented for any tool. LLMs cannot plan downstream operations or extract expected fields without knowing the response structure.
Missing parameter descriptions in optional fields. wake_dump's 'session_id' parameter has a description, but wake_status and wake_log have completely empty parameter objects with no descriptions of defaults or constraints.
No error handling guidance. Tools do not document what happens on failure (e.g., invalid command IDs in wake_get_output, nonexistent session in wake_dump). LLMs have no recovery path if operations fail.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-22 | D | 59 | 2026-07-28+ | v2 |
| 2026-03-09 | F | 0 | 2024-11-05+ | v1 |
Irreversible write operation (wake_annotate) lacks safety mechanism. Annotations mutate state but the tool offers no dry-run, confirmation step, or undo capability.
Numeric parameters lack bounds. wake_log and wake_list_commands accept unbounded 'count' integers with no min/max documented. LLMs could pass absurdly large values causing performance issues.