Labsco
MCP SERVER

Console Automation

by ooples

Give an agent a real terminal — local shells and remote SSH sessions, with output monitoring and error detection built in.

Editors, Terminals & Local Dev Environment
Summary
A privileged terminal for an agent, with the assertion tools that make a session testable.

The interesting half is not that it runs commands but that it watches them: pattern waits, error detection across languages, and exit-code assertions turn a shell session into something an agent can verify rather than guess about. It can also open SSH sessions and execute anything, so the maintainers' own guidance is to keep tool approvals on and run it under a restricted account.

What it is

A server with 40 tools over persistent console sessions: create them locally or over SSH, send input, read filtered output, and run long jobs in the background.

What you get
  • console_create_session opens a local shell (cmd, PowerShell, pwsh, bash, zsh, sh) or an SSH session, with up to 50 running at once
  • console_send_input and console_send_key drive interactive prompts, including ctrl+c and other key sequences
  • console_get_output and console_get_stream return filtered, paginated or streamed output; console_wait_for_output blocks until a pattern appears
  • console_detect_errors scans output for errors, exceptions and stack traces across languages
  • console_execute_async plus console_get_job_status, console_get_job_progress and console_get_job_result run long commands in the background with a priority queue
  • console_assert_output, console_assert_exit_code and console_assert_no_errors turn a session into a test; console_save_snapshot and console_compare_snapshots diff state before and after
  • console_save_profile stores SSH, Docker, WSL and cloud connections; console_use_profile connects with one call
  • console_get_system_metrics and console_get_session_metrics report CPU, memory, disk and network use per system and per session
Requirements

Node.js 18.0.0 or newer, and a clone — there is no npm package for it, so npx is not an install path. Build with npm ci and npm run build, then register the built server with your client. Saved profiles refuse inline secrets: use passwordEnvVar, privateKeyEnvVar or privateKeyPath, and passphraseEnvVar. Session persistence is off unless you set MCP_SESSION_PERSISTENCE.

Setup effort

Build from source — clone the repository and build it