MCP TUI Test
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| launch_tuiB | Launch a TUI application for testing. Args: command: The command to launch. session_id: Unique identifier for this session. timeout: Default pexpect timeout in seconds. dimensions: Terminal dimensions as WIDTHxHEIGHT. mode: "stream" for CLI tools, "buffer" for full TUIs (position/cursor aware). |
| send_keysC | Send keyboard input. Escapes like \n, \t, \x1b are decoded unless raw=True. |
| send_ctrlB | Send a Ctrl+ combination (e.g. key='c' sends Ctrl-C). |
| capture_screenC | Capture the current screen (buffer display in buffer mode, cleaned stream otherwise). |
| expect_textB | Wait until a regex/text pattern appears in the output (or timeout/EOF). |
| assert_containsB | Assert the current screen contains |
| assert_at_positionB | Assert |
| get_cursor_positionB | Current cursor (row, col) — buffer mode only. |
| get_screen_regionC | Extract a rectangular screen region — buffer mode only. |
| get_lineC | Get one screen-buffer line — buffer mode only. |
| close_sessionB | Close a session and reap its process. |
| list_sessionsA | List active sessions (dead/expired ones are reaped and reported). |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 12 tools
Session lifecycle (launch_tui, close_session, list_sessions), input (send_keys, send_ctrl), and assertions (assert_contains, assert_at_position) are clearly distinct. There is mild overlap among screen-reading tools (get_line, get_screen_region, capture_screen) and between send_keys/send_ctrl and expect_text/assert_contains, but descriptions resolve these boundaries well.
All names are snake_case and verb-first, which is highly consistent. The only slight wrinkle is that screen reads mix verbs (get_line, get_screen_region vs capture_screen), but each verb still conveys the action clearly.
12 tools is well within the ideal range and each maps to a distinct testing need (session management, input, screen inspection, waiting, assertions). No tool feels redundant or bolted on.
The surface covers the full TUI testing loop: launch/close/list sessions, send input, read screen state, wait for patterns, and assert on content/position. Minor gaps exist — no terminal resize after launch and no mouse/click input — but core workflows are fully supported.