SSH

A Model Context Protocol (MCP) server that provides SSH functionality including file copying between servers, command execution, and file management.
  • javascript

0

GitHub Stars

javascript

Language

7 months ago

First Indexed

3 months ago

Catalog Refreshed

Documentation & install

Readme and setup notes from the catalogue, plus a client-ready config you can copy for your MCP host.

Installation

Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "mahathirmuh-mcp-ssh-server": {
      "command": "node",
      "args": [
        "C:/path/to/mcp-ssh-server/dist/index.js"
      ]
    }
  }
}

You can use the MCP SSH Server to manage remote servers over SSH with secure connections, file transfers, interactive shells, and Docker deployment. This server coordinates SSH-related actions through an MCP client, streamlining remote administration and automation.

How to use

To operate the MCP SSH Server, connect with your MCP client and select SSH-related tools. You can establish SSH connections, execute commands, start interactive shells, transfer files, manage credentials, and deploy Docker containers on remote hosts. Each action preserves a working directory per connection and reuses pooled SSH connections for efficiency.

How to install

Prerequisites you need before installing the server are ready: Node.js 18 or newer, TypeScript 5.3+, SSH access to the target servers, and an MCP client such as Claude Desktop.

Follow these concrete steps to install and run the MCP SSH Server locally:

# 1. Clone the repository
git clone <repository-url>
cd mcp-ssh-server

# 2. Install dependencies
npm install

# 3. Build the project
npm run build

Configuration for Claude Desktop (MCP client)

Configure Claude Desktop to load the MCP SSH Server as a local process. Create a config entry that starts the server using Node and the built index file.

{
  "mcpServers": {
    "ssh-server_win": {
      "command": "node",
      "args": ["C:/path/to/mcp-ssh-server/dist/index.js"],
      "env": {}
    }
  }
}

Starting the server locally

After building, run Claude Desktop and ensure the configured path to dist/index.js exists. The server runs as a local process and exposes MCP endpoints to your client.

Available tools

ssh_connect

Establish an SSH connection to a remote host using the provided host, username, and authentication method.

ssh_disconnect

Close an active SSH connection and release related resources.

ssh_connect_with_credential

Connect using saved SSH credentials stored in the credential manager.

ssh_execute

Execute a command on the connected remote server and return the output.

ssh_start_interactive_shell

Open an interactive PTY-based shell session for real-time command interaction.

ssh_send_input

Send input to an active interactive shell session.

ssh_read_output

Read output from an active interactive shell session.

ssh_close_interactive_shell

Close the interactive shell session cleanly.

ssh_copy_file

Copy files between local and remote hosts, creating directories as needed.

ssh_list_files

List contents of a directory on the remote server.

ssh_file_info

Retrieve metadata for a specified file on the remote server.

ssh_save_credential

Save SSH credentials securely for reuse.

ssh_list_credentials

List saved SSH credentials.

ssh_delete_credential

Delete a saved SSH credential.

ssh_set_working_directory

Set the current working directory for the active connection.

ssh_get_working_directory

Get the current working directory for the active connection.

ssh_docker_deploy

Deploy Docker containers on the remote host.

ssh_docker_status

Check status of Docker containers on the remote host.

Built by
VeilStrat
AI signals for GTM teams
© 2026 VeilStrat. All rights reserved.All systems operational