MCP.so
Sign In

mcp server for unix pty control

@ianks

About mcp server for unix pty control

The native MCP server for Unix PTY control gives AI models authentic, low-latency terminal access by spawning true pseudo-terminals—not brittle AppleScript hacks—so you can open persistent Bash, Python, or SSH sessions, run commands like “ssh prod.server,” and stream only fresh o

Basic information

Config

Add this server to your MCP-compatible client using the configuration below.

{
  "mcpServers": {
    "terminal-mcp": {
      "type": "stdio",
      "command": "terminal-mcp"
    }
  }
}

Tools

7

spawn a new terminal

run and get output immediately

start long-running commands

poll async command progress

see what's running

cleanup when done

ctrl-c and friends

Overview

What is mcp server for unix pty control?

It is an MCP server that gives AI models real terminal access by spawning Unix pseudo-terminal sessions, running commands, and reading output. It is designed for developers who need native, low-latency shell interaction for AI agents.

How to use mcp server for unix pty control?

Install with cargo install --git https://github.com/ianks/terminal-mcp, then add to Claude Code using claude mcp add --scope user terminal-mcp. AI models can then call tools like create_session, execute_command, and list_sessions via JSON-RPC.

Key features of mcp server for unix pty control

  • True Unix ptys, not AppleScript or workarounds
  • Async I/O powered by Tokio
  • Smart buffering that only returns new output
  • Session persistence across tool calls
  • Multi-session support to run several terminals at once

Use cases of mcp server for unix pty control

  • AI-assisted remote server debugging via SSH
  • Running long-lived shell commands with async output polling
  • Automating multi-step development workflows (build, test, deploy)
  • Interactive REPL sessions (Python, bash) controlled by an agent
  • Switching between multiple terminal contexts in a single conversation

FAQ from mcp server for unix pty control

What tools does the server expose?

It provides create_session, execute_command, execute_command_async, read_streaming_output, list_sessions, destroy_session, and send_control_character.

How does it differ from script-based terminal access?

It uses real pseudo-terminals (ptys) rather than simulated or hacked I/O, giving proper shell interaction with features like ctrl-c, process groups, and terminal signaling.

Can I run multiple terminals at the same time?

Yes. The server supports multi-session management, allowing you to spawn several named sessions (e.g., bash, ssh, python) and switch between them.

How do I run a long-running command without blocking?

Use the execute_command_async tool to start the command, then poll progress with read_streaming_output until completion. Sessions stay alive between calls.

What runtime dependencies does it require?

A Unix-like system with Rust installed (to compile via Cargo) and support for Unix ptys. The server is compiled as a native binary and communicates over MCP (stdio transport by default).

Comments

More Developer Tools MCP servers