MCP Server for AI-assisted development

Your AI runs commands.
You stay in control.

sideshell is an MCP server that gives AI assistants a visible, persistent terminal. See every command. Intervene anytime. No more hidden shell sessions.

claude code → sideshell · live

The problem with AI terminals

When AI assistants run shell commands, everything happens in a hidden sandbox. You can't see the output in real time, can't type a password when prompted, and can't interrupt a runaway process. The conversation becomes a guessing game.

sideshell moves AI command execution into a real terminal window that stays open on your screen. Same shell, full visibility, complete control.

x
Hidden execution
Commands run in an invisible sandbox. Output appears only after completion.
x
No intervention
Can't enter passwords, confirm prompts, or press Ctrl+C when needed.
x
Session loss
Terminal state lost when AI session restarts. No continuity.

Built for developers who want visibility

17 MCP tools that give AI assistants full terminal access while keeping you in the driver's seat.

Visible execution

Commands run in a real terminal window on your screen. Watch output stream in real time, not after the fact.

Full control

Intervene anytime -- enter passwords, answer prompts, Ctrl+C a runaway process. The terminal is yours.

Secrets stay yours

When a command needs a `sudo` or SSH password, you type it into the terminal. The keystrokes go to the shell, never to the model.

Persistent sessions

Terminal sessions survive AI restarts. Pick up where you left off -- running servers, SSH connections, everything intact.

Cross-platform

Eight native backends — iTerm2, tmux, Ghostty, WezTerm, Kitty, VS Code/Cursor, JetBrains, maquake. Works on macOS, Linux, and WSL.

IDE plugins

Extensions for VSCode/Cursor and IntelliJ/PyCharm. Integrates directly into your development workflow.

17 MCP tools

Execute commands, read output, split panes, manage sessions, control appearance, send keystrokes, and more.

How it works

sideshell sits between your AI assistant and a real terminal emulator, bridging them through the MCP protocol.

MCP Client
AI Assistant
Claude Code, Cursor, Codex,
Windsurf, OpenCode, etc.
MCP Server
sideshell
Routes commands to
the right backend
Terminal
Your Terminal
iTerm2, tmux, Ghostty, WezTerm,
Kitty, VS Code, JetBrains, maquake
1

AI decides to run a command

The AI assistant calls sideshell's execute tool through MCP, just like calling any other tool.

2

Command runs in your terminal

sideshell routes the command to a real terminal window. You see it execute live, just as if you'd typed it yourself.

3

Output flows back to the AI

sideshell reads the terminal output and returns it to the AI. The session persists -- state, history, environment variables, everything.

Supported terminals

Eight native backends across terminal emulators and IDEs. Auto-detection picks the right one; --backend overrides.

iTerm2
macOS
Native API
tmux
macOS, Linux, WSL
Full support
Ghostty
macOS
Native splits + tmux
WezTerm
macOS, Linux, Windows
Full support
Kitty
macOS, Linux
Full support
VS Code / Cursor
macOS, Linux, Windows
Extension
JetBrains
macOS, Linux, Windows
Plugin
maquake
macOS
Unix socket

Tool overview

Every tool your AI assistant needs to operate a terminal, grouped by function.

Execution

  • execute Run commands
  • control-char Send keys
  • paste Paste text
  • clear Clear screen

Reading

  • read Read output
  • get-terminal-state Full state

Sessions

  • list List sessions
  • split Split pane
  • new-tab New tab
  • new-window New window
  • new-session Smart create
  • focus Focus session
  • close-session Close

Appearance

  • set-appearance Title, badge, color
  • set-color-preset Color preset
  • list-color-presets Available presets
  • show-alert Alert dialog

Works with any MCP client

sideshell speaks MCP. Any client that supports the protocol can use it.

Claude Desktop Claude Code Cursor Windsurf Codex OpenCode Pi ...and any MCP-compatible client

Install & connect

With uvx there's nothing to install — your MCP client runs it on demand. Just add a few lines of config.

Add it (no install needed)

Claude Code — one command
$ claude mcp add sideshell -- uvx sideshell-mcp
# pin a backend:
$ claude mcp add sideshell -- uvx sideshell-mcp --backend ghostty
uvx — zero install, runs on demand
$ uvx sideshell-mcp
prefer a persistent install? (optional)
$ pip install sideshell-mcp
$ pipx install sideshell-mcp

Connect to your AI assistant

Claude Desktop / Claude Code
{
  "mcpServers": {
    "sideshell": {
      "command": "uvx",
      "args": ["sideshell-mcp"]
    }
  }
}
Pin a specific terminal (add --backend)
{
  "mcpServers": {
    "sideshell": {
      "command": "uvx",
      "args": ["sideshell-mcp", "--backend", "ghostty"]
    }
  }
}
backends: iterm2 · tmux · ghostty · wezterm · kitty · vscode · intellij · maquake
*

Requirements: Python 3.11+ and at least one supported terminal emulator. By default, sideshell auto-detects your available terminal. Use --backend to override. Every backend works with the base install; only iTerm2 needs an extra — pip install 'sideshell-mcp[iterm2]'.