Skip to main content
Glama

remote-ssh-mcp

MCP server for persistent SSH sessions with native GUI credential prompts.

npm version

Features

  • πŸ”— Persistent Sessions - Connections survive across multiple commands

  • πŸ” GUI Credential Prompts - Native dialogs on Linux/macOS/Windows

  • πŸ“ File Transfer - Upload/download via SFTP

  • ⏱️ Background Commands - Run long tasks without blocking

  • πŸ”„ Session Reuse - Automatic connection pooling per host

  • πŸ›‘οΈ Secure - Per-process secrets, localhost-only helper

Installation

npm install -g remote-ssh-mcp

Quick Start

Add to your MCP client config:

{
  "mcpServers": {
    "ssh": {
      "command": "remote-ssh-mcp"
    }
  }
}

That's it! Connect to servers and credentials will be prompted via native GUI.

Configuration

Environment Variables (Optional)

Skip GUI prompts by setting credentials:

{
  "mcpServers": {
    "ssh": {
      "command": "remote-ssh-mcp",
      "env": {
        "SSH_USER": "deploy",
        "SSH_PASSWORD": "secret"
      }
    }
  }
}

Host Config File (Optional)

Create ~/.ssh/mcp-hosts.json:

{
  "defaults": { "username": "admin" },
  "hosts": {
    "prod.example.com": {
      "username": "deploy",
      "keyPath": "~/.ssh/deploy_key"
    }
  }
}

Tools

Tool

Description

ssh_connect

Connect to SSH server, returns session_id

ssh_exec

Execute command (with optional background mode)

ssh_read_buffer

Read terminal output history

ssh_disconnect

Close a session

list_sessions

List active sessions

scp_upload

Upload file via SFTP

scp_download

Download file via SFTP

Example Usage

1. ssh_connect(host="server.com", auth_mode="password")
   β†’ { session_id: "abc-123", status: "connected" }

2. ssh_exec(session_id="abc-123", command="cd /app && git pull")
   β†’ { stdout: "Already up to date.", exit_code: 0 }

3. ssh_exec(session_id="abc-123", command="npm run build", background=true)
   β†’ { status: "running", pid: "12345" }

4. ssh_read_buffer(session_id="abc-123", lines=50)
   β†’ { lines: ["Building...", "Done!"], total_buffered: 150 }

GUI Requirements

For credential prompts:

  • Linux: zenity (apt install zenity)

  • macOS: Built-in (osascript)

  • Windows: Built-in (PowerShell)

Without GUI, use environment variables or config file.

Security

  • Credentials prompted via native OS dialogs

  • Never logged or written to disk

  • Per-process authentication tokens

  • Localhost-only credential helper

  • Sessions auto-expire after 15 min inactivity

License

MIT

Install Server
A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/code-pumpkin/remote-ssh-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server