home / mcp / mcp ssh agent

MCP SSH Agent

A Model Context Protocol (MCP) server for managing and controlling SSH connections.

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "aiondadotcom-mcp-ssh": {
      "command": "npx",
      "args": [
        "@aiondadotcom/mcp-ssh"
      ],
      "env": {
        "MCP_SILENT": "true or false"
      }
    }
  }
}

You can use the MCP SSH Agent to manage and control SSH connections through MCP-compatible clients. It automatically discovers hosts from your SSH configuration and known hosts, runs commands via your native SSH tools, and supports file transfers, batch operations, and robust error handling to streamline AI-assisted SSH workflows.

How to use

You interact with the MCP SSH Agent through your MCP-compatible client. Start by configuring the agent as an MCP server, then use natural language prompts to perform SSH tasks such as listing hosts, checking connectivity, running remote commands, and transferring files. The agent leverages your system’s SSH configuration and keys, so you get familiar behavior and trust the existing SSH setup.

How to install

Prerequisites: Install Node.js 18 or higher and ensure the system has the SSH client tools ssh and scp available in your path.

Install via npx (recommended):

# Install the MCP SSH Agent and run it directly
npx @aiondadotcom/mcp-ssh

Additional steps for configuring the MCP server

If you want to persist configuration in your MCP client, you can set up a standard MCP server entry that points to the MCP SSH Agent using the inline example configuration.

{
  "mcpServers": {
    "mcp_ssh": {
      "command": "npx",
      "args": ["@aiondadotcom/mcp-ssh"]
    }
  }
}

Available tools

listKnownHosts

Lists all known SSH hosts, prioritizing entries from ~/.ssh/config, then entries from ~/.ssh/known_hosts.

runRemoteCommand

Executes a command on a specified remote host using the system ssh tool.

getHostInfo

Returns detailed configuration for a specific host from your SSH config.

checkConnectivity

Tests SSH connectivity to a specified host to verify reachability and authentication.

uploadFile

Uploads a local file to a remote host using scp.

downloadFile

Downloads a file from a remote host to the local machine using scp.

runCommandBatch

Executes multiple SSH commands on a host in sequence.