Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
No arguments | |||
Capabilities
Features and capabilities supported by this server
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| logging | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| launch | Launch a TUI application in a managed pseudo-terminal. Returns a session ID for subsequent interactions. |
| list_sessions | List all active TUI sessions with their IDs, commands, and dimensions. |
| kill | Terminate a TUI session and its underlying process. |
| resize | Resize the terminal dimensions of a session. The TUI app will receive a SIGWINCH signal. |
| screenshot | Capture the terminal as a PNG image. Shows exactly what a user would see - colors, styling, layout. |
| snapshot | Capture the terminal buffer as plain text. Faster and cheaper than a screenshot - use this when you only need the text content. |
| read_region | Read a rectangular region of the terminal buffer as text. |
| cursor | Get the current cursor position in the terminal. |
| send_keys | Send keystrokes to the TUI app. Use this for special keys and shortcuts, not for typing text (use send_text for that). Accepts a single key descriptor string or an array of key descriptors to send in sequence. Supports named keys (Enter, Tab, Escape, Up, Down, Left, Right, Backspace, Delete, Home, End, PageUp, PageDown, F1-F12, Space) and modifiers (Ctrl+, Alt+, Shift+). Examples: "Enter", "Ctrl+C", ["Down", "Down", "Down", "Enter"], ["Escape", ":wq", "Enter"]. |
| send_text | Type a string of characters into the TUI app. The text is sent exactly as provided - MCP JSON handles escaping, so do not double-escape. To type a literal backslash, send one backslash. Include a trailing newline (\n) if you want to press Enter after the text. Use send_keys instead for special keys like Ctrl+C or arrow keys. |
| send_mouse | Send a mouse event to the TUI app (if the app has mouse support enabled). |
| wait_for_text | Wait until a regex pattern appears in the terminal buffer. Useful for waiting for prompts, loading states, or specific output. |
| wait_for_idle | Wait until the terminal buffer stops changing. Useful after sending keys to wait for the app to finish rendering. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |