
Terminal Mcp
This server wraps persistent PTY sessions so Claude can interact with SSH connections, database CLIs, REPLs, and TUI applications that the built-in Bash tool can't handle. It exposes tools like session_create, session_send, session_read, and session_interact to manage long-lived processes across multiple tool calls. You get regex-triggered reads with session_wait_for, special key support for arrow keys and control characters, and four read modes including auto-detection of alternate screen buffers for tools like htop or vim. It includes a dangerous command gate that prompts before running destructive operations, OSC 133 shell integration for exit code detection, and configurable output truncation to manage token usage. Reach for this when you need Claude to maintain an interactive session that survives beyond a single command execution, whether that's a multi-line Python REPL or a live MySQL prompt.
- GitHub stars
- 7
- tools
- 9
- transport
- STDIO
- env vars
- 2
- last updated
- Feb 28, 2026
Tools
9 toolsPublic tool metadata for what this MCP can expose to an agent.
terminal_startStart a terminal session. Auto-detects shell if omitted.6 params
Start a terminal session. Auto-detects shell if omitted.
colsintegercwdstringenvobjectnamestringrowsintegershellstringterminal_execRun a command in a session and wait for completion.6 params
Run a command in a session and wait for completion.
commandstringmaxLinesintegerminOutputBytesintegerquietExitMsintegersessionIdstringtimeoutintegerterminal_runRun a binary directly. shell=true for built-ins/pipes/redirects.12 params
Run a binary directly. shell=true for built-ins/pipes/redirects.
argsarraycmdstringcwdstringmaxOutputBytesintegerparsebooleanparseOnlybooleanshellbooleansuccessExitCodevaluesuccessFilestringsuccessFilePatternstringsummarybooleantimeoutintegerterminal_writeWrite raw data to a terminal session.2 params
Write raw data to a terminal session.
datastringsessionIdstringterminal_readRead new output from a terminal session.5 params
Read new output from a terminal session.
idleTimeoutintegermaxLinesintegersessionIdstringsinceintegertimeoutintegerterminal_waitWait for a pattern to appear in terminal output.5 params
Wait for a pattern to appear in terminal output.
patternstringreturnModestringtail · full · match-onlydefault: tailsessionIdstringtailLinesintegertimeoutintegerterminal_stopStop a terminal session.3 params
Stop a terminal session.
sessionIdstringsnapshotLinesintegertranscriptPathstringterminal_listList active terminal sessions.1 params
List active terminal sessions.
verbosebooleanterminal_extra8 more tools: terminal_run_paged, terminal_get_history, terminal_resize, terminal_send_key, terminal_watch, terminal_retry, terminal_diff, terminal_write_file. list=true for full schemas, or pass tool + args to call.3 params
8 more tools: terminal_run_paged, terminal_get_history, terminal_resize, terminal_send_key, terminal_watch, terminal_retry, terminal_diff, terminal_write_file. list=true for full schemas, or pass tool + args to call.
argsobjectlistbooleantoolstringSponsors
Configuration
TERMINAL_MCP_MAX_SESSIONSMaximum concurrent sessions
TERMINAL_MCP_IDLE_TIMEOUTSeconds before auto-close (default 1800)
Readme
terminal-mcp banner
Give your AI a real terminal. Persistent sessions. Interactive programs. Zero limitations.
Details
- Repository
- github.com/mkpvishnu/terminal-mcp
- Categories
- Databases, Developer Tools
- Package
terminal-mcp- Transport
- STDIO
- Registry
- MCP registry, active