In-depth architectural comparison of the Sage 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
Sage
Command Line · Local stdio
Quality: 56/100 (Good) | Auth: No auth required
Execkit
Command Line · Local stdio
Quality: 60/100 (Good) | Auth: No auth required
Verdict Summary: Choose Sage 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 Sage 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).
Primary tools included: Local shell command wrapper, Compressed terminal summaries, Local command history and retry context.
Local-first CLI and MCP wrapper for AI coding agents. Routes shell commands through sage run --, stores command history locally, and returns compressed terminal output to reduce context noise.
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
Sage Tools (6)
Local shell command wrapper
Compressed terminal summaries
Local command history and retry context
Context statistics and compression reports
Failure explanations and fix suggestions
Optional manual MCP configuration
Execkit Tools (6)
session_checkpoint
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).
Sage is categorized under Command Line and uses a local stdio subprocess. In contrast, Execkit belongs to Command Line using local stdio subprocess. Select Sage when you need capabilities focused on command line and Execkit when you require tools for command line.
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.