Lightweight MCP server providing terminal access (SSH & local shells) for AI assistants.
Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β or use 1-click editor setup below.
π‘ Paste into ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) or %APPDATA%\Claude\claude_desktop_config.json (Windows)
Lightweight MCP server that gives AI assistants terminal access β SSH and local shells β with support for interactive and long-running commands.
Requires Python β₯ 3.11.
Claude Desktop (claude_desktop_config.json):
Cursor / other clients: same command + args format above.
| Tool | Description |
|---|---|
connect_ssh | Connect to an SSH server; returns session_id and welcome banner |
execute | Run a command locally (no session needed) or over SSH; returns output or status=partial + command_id |
read_output | Poll a running command for new output without sending input |
respond | Send text input to a command waiting at a prompt |
send_control | Send control keys: ctrl+c, ctrl+z, arrow keys, F-keys, etc. |
disconnect | Close an SSH session and release all resources |
Each execute call runs in an isolated channel β there is no persistent shell between calls. For simple tasks, chaining with && works.
For multi-step workflows (project development, debugging, deployment), a terminal multiplexer (like Zellij) provides persistent state that survives across calls. The AI agent can create a persistent session where cd, environment variables, virtual environments, and long-running processes carry over naturally.
cd /foo does not persist. Simple tasks: chain with &&. Multi-step workflows: use a terminal multiplexer.status="partial" with a command_id; poll with read_output or send input with respondShowcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.
[](https://allmcps.com/mcp/interminal)<a href="https://allmcps.com/mcp/interminal"><img src="https://allmcps.com/api/badge/interminal?style=directory" alt="Interminal on AllMCPs" /></a>