MCP server for terminal UI automation and interaction. Provides tools to create terminal sessions, send keystrokes, capture snapshots, wait for text patterns, and execute TUI flows.
mcp-tuikit has 7 tools with complete input schemas and descriptions, but quality is uneven. Tool names follow verb_noun convention (create_session, close_session, send_keys). Descriptions are present (avg ~80 chars) but lack depth on WHEN to use each tool and what happens on failure. Parameters have types and descriptions, but lack constraints (enums, ranges, patterns). No output schemas documented. Error handling is absent, no guidance on retryability, recovery steps, or actionable error messages. The run_flow tool accepts both yaml_path and yaml_string (mutually exclusive) but this dependency is not documented. No tool annotations (readOnlyHint, destructiveHint, idempotentHint) despite clear risk levels (WRITE vs READ_ONLY). Session management tools (create_session, close_session, send_keys) lack idempotency guarantees.
Check if the host system has all required dependencies for mcp-tuikit to run properly.
Close a terminal session and its terminal window.
Create a new terminal session and open the configured terminal window.
Capture a txt and/or png snapshot from an active session.
Run a TUI flow and capture snapshots.
Send keystrokes to an active terminal session.
Wait for a regex pattern to appear in the terminal output.
No output schemas documented. LLMs cannot plan downstream calls or extract structured data from tool responses. All 7 tools lack return type documentation.
No tool annotations (readOnlyHint, destructiveHint, idempotentHint). Tools are marked with Risk levels (WRITE, READ_ONLY) in metadata but not exposed to LLM via schema. LLMs cannot reason about side effects or retry safety.
run_flow accepts both yaml_path and yaml_string (mutually exclusive). No description documents this dependency or which parameter takes precedence if both are provided.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 53 | 2026-07-28+ | v2 |
No error handling guidance. Tools lack descriptions of failure modes, retryability, or recovery steps. E.g., wait_for_text timeout, should agent retry? Increase timeout? Call a different tool?
Descriptions lack WHEN-to-use context. E.g., send_keys description does not explain when to use it vs run_flow, or what 'tmux format' keys means to an LLM unfamiliar with tmux.