Forge vs Execkit — MCP Server Comparison | AllMCPs
Side-by-Side Model Context Protocol Comparison
Forge vs Execkit
In-depth architectural comparison of the Forge and Execkit 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
Forge
Command Line · Local stdio
Quality: 61/100 (Good) | Auth: No auth required
Execkit
Command Line · Local stdio
Quality: 60/100 (Good) | Auth: No auth required
Verdict Summary: Choose Forge if you need specialized Command Line tools running via a local process. Choose Execkit 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 Forge 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).
Terminal MCP server for AI coding agents with persistent PTY sessions, ring-buffer incremental reads, headless xterm screen capture, multi-agent orchestration, and a real-time web dashboard.
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.
Category & Scope
Tools & Capabilities Breakdown
Forge Tools (25)
create_terminal
Spawn a new PTY terminal session. Returns session ID for subsequent operations.
revive_terminal
Recreate a previously exited terminal session with the same command, working directory, name, tags, and dimensions. The old session is removed and a fresh one is spawned.
create_from_template
Create a terminal session from a pre-configured template (e.g., shell, next-dev, vite-dev, npm-test).
list_templates
List all available session templates.
spawn_claude
Spawn a Claude Code agent in a new terminal session. IMPORTANT: cwd must be set explicitly — there is no session inheritance. By default runs in interactive mode — the session stays alive and accepts follow-up messages via the dashboard. Use oneShot: true for autonomous --print mode. Use worktree + branch to run in an isolated git worktree.
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).
Forge is categorized under Command Line and uses a local stdio subprocess. In contrast, Execkit belongs to Command Line using local stdio subprocess. Select Forge when you need capabilities focused on command line and Execkit when you require tools for command line.
Spawn a Codex agent in a new terminal session. By default runs in interactive mode — the session stays alive and accepts follow-up messages via the dashboard. Use oneShot: true for autonomous `codex exec` mode (requires prompt).
spawn_gemini
Spawn a Gemini CLI agent in a new terminal session. By default runs in interactive mode — the session stays alive and accepts follow-up messages via the dashboard. Use oneShot: true for headless mode (requires prompt).
write_terminal
Send input to a terminal session. Appends newline by default. Use submit=true for Claude Code sessions (sends Escape+Enter to exit multi-line mode and submit).
read_terminal
Read NEW output from a terminal since last read (incremental). Token-efficient — only returns what changed.
read_screen
Read the current terminal viewport as rendered text (no ANSI codes). Shows what a human would see on screen.
grep_terminal
Search terminal output buffer with a regex pattern. Returns matching lines with optional context.
wait_for
Wait for a regex pattern to appear in terminal output, OR wait for the process to exit. Checks existing buffer/status first, then watches live. Use waitForExit: true for commands that terminate (builds, tests, installs).
+13 more tools listed on main page
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.
session_exec
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.