Skip to main content
Glama

SSH MCP Server

A Model Context Protocol (MCP) server that enables SSH connectivity and remote command execution. This server can run locally to access private networks or via Smithery for public servers.

Features

  • ssh_test_connection: Tests connectivity to the configured host and returns hostname

  • ssh_run: Executes commands remotely and returns stdout, stderr, and exit code

Installation Methods

Method 1: From Source (For Development)

Best for developers who want to modify the code or contribute to the project.

  1. Clone and build:

git clone https://github.com/lgariv/ssh-mcp cd ssh-mcp npm install npm run build
  1. Add to your MCP client config:

{ "mcpServers": { "ssh-mcp": { "command": "node", "args": ["path/to/ssh-mcp/dist/index.js"], "env": { "SSH_HOST": "192.168.1.100", "SSH_PORT": "22", "SSH_USERNAME": "ubuntu", "SSH_PASSWORD": "your-password" } } } }

Method 2: Via NPM Package (Recommended for Local Networks)

Best for accessing servers on your local network (LAN) or private IPs. Runs on your machine.

Add to your MCP client config:

{ "mcpServers": { "ssh-mcp": { "command": "npx", "args": ["-y", "@lgariv/ssh-mcp@latest"], "env": { "SSH_HOST": "10.0.0.116", "SSH_PORT": "22", "SSH_USERNAME": "admin", "SSH_PASSWORD": "your-password" } } } }

Benefits:

  • No installation required

  • Always uses the latest version

  • Can access local network resources (192.168.x.x, 10.x.x.x, etc.)

  • Credentials stay on your machine

Method 3: Via Smithery (For Public Servers Only)

Best for accessing publicly accessible SSH servers. Runs on Smithery's infrastructure.

⚠️ Important: This method only works with publicly accessible servers. It cannot access private IPs or LAN resources.

Add to your MCP client config:

{ "mcpServers": { "ssh-mcp": { "type": "http", "url": "https://server.smithery.ai/lgariv/ssh-mcp/mcp", "config": { "sshHost": "public.example.com", "sshPort": 22, "sshUsername": "ubuntu", "sshPassword": "your-password" } } } }

Configuration

All methods require these environment variables or config parameters:

Parameter

Description

Default

SSH_HOST

/

sshHost

Target SSH server IP/hostname

Required

SSH_PORT

/

sshPort

SSH port number

22

SSH_USERNAME

/

sshUsername

SSH username

Required

SSH_PASSWORD

/

sshPassword

SSH password

Required

Use Cases by Method

Use Case

Recommended Method

Local home lab servers

Method 2 (NPM)

Raspberry Pi on LAN

Method 2 (NPM)

Local VMs or containers

Method 2 (NPM)

Development and testing

Method 1 (Source)

Cloud VPS with public IP

Method 3 (Smithery)

Public web servers

Method 3 (Smithery)

Security Notes

  • Methods 1 & 2: Credentials are stored locally in your MCP configuration

  • Method 3: Credentials are sent to Smithery's servers (use only with public servers)

  • Always use strong passwords and consider SSH keys for production use

  • Ensure your MCP configuration file has appropriate permissions

Development

# Install dependencies npm install # Run in development mode npm run dev # Build for production npm run build # Run built version npm start

License

ISC

Author

lgariv

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

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/lgariv/ssh-mcp'

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