ssh-session-mcp

security MCP Server

Persistent SSH PTY session manager for MCP clients with actor-aware input tracking, split dashboard rendering, and automatic session cleanup. | https://zw-awa.github.io/ssh-session-mcp/

VerifiedInstall Ready
securitysecurity
5 views2 stars0 forksv2.7.3Apache-2.0

Why This Matters

Discovered via github-topic:claude-mcp and last synced 3mo ago.

VerifiedInstall Ready
Source
github-topic:claude-mcp
Stars
2
Last synced
3mo ago
Install
Instructions detected

Install

1. Install the package

npx ssh-session-mcp

2. Add to claude_desktop_config.json

{
  "mcpServers": {
    "ssh-session-mcp": {
      "command": "npx",
      "args": [
        "ssh-session-mcp"
      ]
    }
  }
}

Config file location: ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) / %APPDATA%\Claude\claude_desktop_config.json (Windows)

59
Tools
0
Resources
0
Prompts
Standard I/O
Transport

Available Tools (59)

ssh-session-history

Read line-numbered mixed terminal history

ssh-session-resize

Resize the PTY

SSH_PORT

Legacy single-target SSH mode

ssh-viewer-list

List tracked viewer processes

Field

Meaning

ssh-session-control

Send control keys such as `ctrl_c`, arrows, or `tab`

nextAction

Suggested next step

ssh-session-list

List tracked sessions

SSH_MCP_USE_MARKER

Enable sentinel completion markers

ssh-quick-connect

One-step connect flow for agents

Mode

Behavior

ssh-session-open

Open a session with explicit SSH parameters

ssh-session-read

Read buffered terminal output by offset

ssh-viewer-ensure

Open or reuse the local viewer

resultStatus

Normalized outcome: `success`, `partial_success`, `blocked`, `failure`

failureCategory

Normalized failure type when blocked or failed

SSH_MCP_LOG_DIR

Local JSONL log directory

SSH_MCP_MODE

Runtime safety mode

evidence

Short supporting facts

summary

Short human/agent readable summary

full

Relaxes the guardrails for advanced use, while still blocking a small set of clearly destructive abuse cases.

Dockerfile

Container image build definition

agent

Only the agent can type. User input is blocked until the policy changes.

ssh-session-policy-upsert

Add or update a session-specific custom policy rule

ssh-session-watch

Long-poll for output and dashboard changes

ssh-status

Runtime overview

SSH_MCP_CONFIG

Profile-based mode or config outside cwd

common

User and agent can both type into the shared terminal.

ssh-command-status

Async poller

ssh-session-send

Send raw PTY input

ssh-session-diagnostics

Inspect lock state, warnings, running command state, and viewer health

ssh-session-close

Close a session cleanly

Policy

What the operator experiences

SSH_HOST

Legacy single-target SSH mode

VIEWER_PORT

Viewer enabled

AUTO_OPEN_TERMINAL

Auto-open viewer tab

Path

Purpose

safe

Default. Automatically blocks obviously dangerous, interactive, or never-ending commands.

ssh-session-policy-reset

Restore inherited rules for the current session

ssh-session-set-active

Choose the default session

Variable

Required When

VIEWER_HOST

Custom viewer bind

SSH_SESSION_MCP_IMAGE

Docker Compose image override

Tool

Purpose

ssh-session-policy-remove

Remove a session-specific custom policy rule

SSH_MCP_INSTANCE

Multi-agent / multi-client isolation

SSH_MCP_LOG_MODE

Runtime metadata logging

user

Only the user can type. Agent write actions are blocked.

ssh-retry

Retry executor

ssh-device-list

List configured devices and defaults

SSH_USER

Legacy single-target SSH mode

SSH_MCP_LOCAL

Local demo mode

auto

The user can start typing without fighting the agent. While the user is actively drafting input, agent writes are blocked.

ssh-session-policy-list

Show inherited policy defaults and the current session rule set

ssh-run

Main command execution tool

SSH_PASSWORD

Password-based auth

SSH_MCP_DEBUG

Browser debug controls

SSH_KEY

Key-based auth in legacy mode

SSH_KEY_DIR

Docker Compose profile-based example