Skip to main content
Glama
claude-ssh-mcp
by MaraBank

claude-ssh-mcp

PyPI version npm version License: MIT

MCP addon for Claude Desktop — gives Claude SSH access to your servers.

Install

With pip (auto-installs Node.js if needed):

pip install claude-ssh-mcp
claude-ssh-mcp

Or with npm:

npx -y claude-ssh-mcp

That's it. Restart Claude Desktop and you're ready.

Related MCP server: SSH Remote MCP Server

Usage

Just talk to Claude naturally:

  • "Connect to 192.168.1.100 as root with password mypass, call it production"

  • "Run ls -la /var/www on production"

  • "Upload C:\Users\me\app.zip to /tmp/app.zip on production"

  • "Download /var/log/error.log from production"

  • "Connect to 10.0.0.5 as deploy with key at C:\Users\me.ssh\id_rsa, name it staging"

  • "Transfer /var/log/app.log from production to /tmp/app.log on staging"

  • "List my servers"

  • "Remove staging"

Features

  • Auto-install — one command adds it to Claude Desktop

  • Auto-installs Node.js — pip version handles everything

  • Servers are saved — connect once, reconnect by name

  • SSH keepalive — connections stay alive during long sessions

  • Auto-reconnect — recovers from network interruptions

  • Auto-update — checks for updates every 2 hours

Saved Servers

When you tell Claude to connect, the server is saved to ~/.mcp-ssh/servers.json. Next time just say "connect to production".

Edit manually if you prefer:

{
  "production": {
    "host": "192.168.1.100",
    "port": 22,
    "username": "root",
    "password": "mypass"
  },
  "staging": {
    "host": "10.0.0.5",
    "port": 22,
    "username": "deploy",
    "privateKeyPath": "C:\\Users\\me\\.ssh\\id_rsa"
  }
}

Tools

Tool

What it does

ssh_connect

Connect to a server (new or saved)

ssh_disconnect

Close a connection

ssh_list_sessions

Show all connections and saved servers

ssh_remove_server

Delete a saved server

ssh_execute

Run a shell command

ssh_upload

Upload a local file (SFTP)

ssh_download

Download a remote file (SFTP)

ssh_transfer

Copy a file between two servers

ssh_list_files

List remote directory contents

Building from Source

git clone https://github.com/MaraBank/mcp-ssh-server.git
cd mcp-ssh-server
npm install
npm run build

Then in Claude Desktop config (%APPDATA%\Claude\claude_desktop_config.json):

{
  "mcpServers": {
    "ssh": {
      "command": "node",
      "args": ["C:\\path\\to\\mcp-ssh-server\\build\\index.js"]
    }
  }
}

License

MIT — free and open source.

Available Tools

9 tools
ssh_connectA

Connect to a remote server via SSH. Provide full details for a new server (it will be saved for next time), or just the sessionName to reconnect to a previously saved server.

Inputs: sessionName (required), host, port, username, +4 more.

ssh_disconnectB

Close an active SSH session.

Inputs: sessionName (required).

ssh_downloadB

Download a file from a remote server to the local machine via SFTP.

Inputs: sessionName (required), remotePath (required), localPath (required).

ssh_executeC

Execute a command on a connected remote server.

Inputs: sessionName (required), command (required).

ssh_list_filesA

List files and directories in a remote path via SFTP.

Inputs: sessionName (required), remotePath (required).

ssh_list_sessionsA

List all active SSH sessions and saved servers.

Inputs: no named parameters.

ssh_remove_serverA

Remove a saved server from servers.json and disconnect if currently active.

Inputs: sessionName (required).

ssh_transferB

Transfer a file between two connected remote servers (source → destination) via SFTP.

Inputs: sourceSession (required), sourceRemotePath (required), destinationSession (required), destinationRemotePath (required).

ssh_uploadB

Upload a local file to a remote server via SFTP.

Inputs: sessionName (required), localPath (required), remotePath (required).

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.8/5.0

    Scored across 9 tools

    Disambiguation5/5

    Each tool targets a distinct operation: connect, disconnect, execute commands, file transfers, listing, and server management. No two tools have overlapping purposes.

    Naming Consistency5/5

    All tools follow the consistent pattern 'ssh_verb' or 'ssh_verb_noun' (e.g., ssh_connect, ssh_list_files, ssh_remove_server). No mixing of conventions.

    Tool Count5/5

    With 9 tools, the set covers essential SSH operations without being bloated. Each tool serves a clear need for remote server management.

    Completeness5/5

    The surface provides full lifecycle management: connect/disconnect, command execution, file upload/download/transfer, listing, and session tracking. No obvious gaps for the domain.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      A
      quality
      A
      maintenance
      Enables Claude to manage multiple SSH connections, execute remote commands, and transfer files across servers. Supports secure authentication, default directories, sudo operations, and deployment automation with profiles for different project types.
      37
      2,699 npm
      543
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      Enables SSH remote access to servers through Claude, allowing users to execute commands, transfer files via SFTP, and manage multiple remote connections using natural language.
      12
      9
      MIT
    • A
      license
      Not graded
      quality
      Not graded
      maintenance
      Connects Claude to remote servers via SSH to execute commands, manage files, and browse directories. It allows users to add, edit, and switch between multiple server configurations through natural language conversations.
      -
    • -
      license
      Not graded
      quality
      Not graded
      maintenance
      Enables Claude Code to control remote servers via SSH for automated deployment, testing, and operations, including command execution and file transfer.
      4
      -