mcp-console-automation — Claude Code MCP server: terminal and SSH
Lets an agent drive local consoles and SSH sessions: run commands, send input, read output, spot errors. Useful when terminal work needs automating.
claude mcp add --env LOG_LEVEL=<LOG_LEVEL> --transport stdio mcp-console-automation -- npx -y mcp-console-automationWhat mcp-console-automation does
The server opens up to 50 console sessions at once, covering local shells such as bash, zsh and pwsh plus remote SSH connections. An agent can type text and special keys (Enter, Tab, Ctrl+C), watch output as it arrives, filter it with regex, or search several patterns together. Long jobs run in the background through a priority queue and can be cancelled or paused.
Test tooling is built in: assertions that output contains a value, matches a regex or equals an expected string, exit-code checks, and session snapshots taken before and after an operation. There is also monitoring for CPU, memory, disk and network, alerts for errors and anomalies, and saved profiles for SSH, Docker, WSL and cloud platforms.
Treat this as a privileged terminal rather than a safe documentation connector, because it runs arbitrary commands and opens remote sessions. Keep MCP tool approvals on, use SSH keys or environment-variable references instead of inline secrets, and leave MCP_DEBUG_LOG and MCP_LOG_DIR unset unless you actually need diagnostics. Session persistence ships disabled, since recovery data can hold commands, paths and environment values. console_save_profile refuses inline passwords, private-key material and passphrases — pass passwordEnvVar, privateKeyEnvVar, privateKeyPath or passphraseEnvVar instead.
What it helps with
- run a command in a local shell and pull its output
- reach a remote host over SSH and execute commands there
- catch an error or stack trace in a long-running process
- assert on exit codes and output content in a test
- read CPU and memory metrics for one session
Example prompts for the agent
- Run
npm run buildin a new console session and show me the last 50 lines - Connect with the
prod-webprofile and check thatnginxis still running - Start the migrations in the background and watch the output until
doneappears
How to install mcp-console-automation
Platform CLI
claude mcp add --env LOG_LEVEL=<LOG_LEVEL> --transport stdio mcp-console-automation -- npx -y mcp-console-automationReplace <…> with your own values
Platform CLI
codex mcp add mcp-console-automation --env LOG_LEVEL=<LOG_LEVEL> -- npx -y mcp-console-automationReplace <…> with your own values
Config file
{
"mcpServers": {
"mcp-console-automation": {
"command": "npx",
"args": [
"-y",
"mcp-console-automation"
],
"env": {
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}Replace <…> with your own values
Config file
{
"servers": {
"mcp-console-automation": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"mcp-console-automation"
],
"env": {
"LOG_LEVEL": "<LOG_LEVEL>"
}
}
}
}Replace <…> with your own values
Platform CLI
gemini mcp add -e LOG_LEVEL=<LOG_LEVEL> mcp-console-automation npx -y mcp-console-automationReplace <…> with your own values
Step by step, with commands for each platform: How to add an MCP server to Claude Code, Codex, Cursor, VS Code, Gemini CLI and more
Questions about mcp-console-automation
How do I install mcp-console-automation in Claude Code?
Run claude mcp add mcp-console-automation -- npx -y mcp-console-automation. To set a log level, use the variant with the environment variable: claude mcp add --env LOG_LEVEL=<LOG_LEVEL> --transport stdio mcp-console-automation -- npx -y mcp-console-automation.
What does mcp-console-automation do?
It gives an agent console sessions to work with: running commands, sending text and special keys, reading and filtering output, background jobs, test assertions and per-session metrics. Both local shells and remote SSH connections are covered.
Is it safe to hand this server to an agent?
It executes arbitrary commands and opens SSH sessions, so treat it like a privileged terminal. Keep tool approvals enabled, keep credentials in environment variables, and leave session persistence off unless you need recovery.