Execkit vs Pty MCP — MCP Server Comparison | AllMCPs
Side-by-Side Model Context Protocol Comparison
Execkit vs Pty MCP
In-depth architectural comparison of the Execkit and Pty MCP MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
Execkit
Command Line · Local stdio
Quality: 60/100 (Good) | Auth: No auth required
Pty MCP
Command Line · Local stdio
Quality: 59/100 (Good) | Auth: No auth required
Verdict Summary: Choose Execkit if you need specialized Command Line tools running via a local process. Choose Pty MCP if your workspace requires Command Line integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose Execkit when:
You need dedicated capabilities in the Command Line domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
Stateful, structured, auditable shell sessions for AI agents over local, SSH, and Docker. Secret redaction, output budgeting, SSH host-key verification, and a loopback read-only browser viewer that streams the live transcript.
Interactive PTY sessions for AI agents — local shells, SSH with persistent sessions (ai-tmux daemon for attach/detach), and serial ports. Single Go binary, no tmux dependency.
Category & Scope
Tools & Capabilities Breakdown
Execkit Tools (6)
session_checkpoint
Take a workspace checkpoint on a REMOTE session (snapshot of files you can restore). Requires git on the remote host. Undoes FILES only - not side effects (DB, network, installs). Returns { checkpoint_id }.
session_checkpoints
List checkpoints (newest first) for a remote session.
session_create
Open a stateful shell session. transport is "local", "ssh", or "docker". ssh needs host, user, and password or key_path; docker needs container (a running container name/id). Optional fingerprint (pin host key), allow/deny command lists. Returns a session_id. Remote sessions support workspace checkpoints - requires git on the remote AND an explicit workspace (set 'workspace'; without it checkpoints/auto_snapshot are disabled, never defaulting to the home dir). Tune with auto_snapshot, paths, checkpoint_ignores. Pass output_budget (same shape as session_exec's budget) to default-shape every command's output.
session_destroy
Destroy a session and free its resources.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
Execkit is categorized under Command Line and uses a local stdio subprocess. In contrast, Pty MCP belongs to Command Line using local stdio subprocess. Select Execkit when you need capabilities focused on command line and Pty MCP when you require tools for command line.
Run a command in a session; returns a structured ExecResult JSON (stdout, stderr, exit_code, duration_ms, cwd, truncated). Optionally pass budget to shape output: {grep:{pattern,context?}, keep:{mode:"all"|"tail"|"head"|"head_tail",n?|head?+tail?}, max_chars?}. Shaping is line-based, client-side, AFTER secret redaction; it never changes the exit code or side effects. When applied, the result includes a budget report (per-stream mode + lines_total/lines_kept).
session_restore
Restore a remote session's workspace FILES to a checkpoint (omit checkpoint_id to restore the most recent). Does not undo side effects.
Pty MCP Tools (12)
create_local_session
Start a local interactive terminal (bash, python3, node, etc.)
create_ssh_session
SSH to a remote host (supports SSH config aliases)
create_serial_session
Connect to a serial port device
send_input
Send a command and wait for output to settle
read_output
Read output, optionally wait for a pattern (`wait_for`, `timeout`, `context_lines`, `tail_lines`)
send_control
Send control keys (ctrl+c, ctrl+d, arrows, tab, etc.)
send_secret
Prompt the human operator for a secret via GUI dialog; sends it to the PTY session without exposing it to AI context or logs ¹
list_sessions
List all active sessions
close_session
Close a session (terminates remote PTY)
detach_session
Disconnect but keep remote PTY running
resize_session
Resize the terminal window (rows/cols) for any session type