Skip to main content
Glama

ezssh-mcp

npm version License: MIT

Easy SSH MCP Server - Execute commands and transfer files via SSH with AI assistance.

Features

  • 🖥️ Cross-platform: Linux, macOS, Windows

  • 🔑 SSH Agent support: System SSH Agent, 1Password, Windows OpenSSH

  • 📋 Auto-discovery: Reads hosts from ~/.ssh/config

  • Concurrent execution: Run commands on multiple hosts simultaneously

  • 📁 File transfer: Upload/download via SFTP

  • 🔗 MCP Resources: SSH hosts exposed as resources for AI access

  • 🤖 Multi-AI compatible: Works with Claude, ChatGPT, Gemini and other MCP-compatible clients

Related MCP server: SSH MCP Server

Installation

npm install -g ezssh-mcp

From Source

git clone https://github.com/laomeifun/ezssh-mcp.git
cd ezssh-mcp
npm install
npm run build

Quick Start

1. Run as MCP Server

ezssh-mcp
# or
npx ezssh-mcp

2. Configure with Claude Desktop

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "ssh": {
      "command": "npx",
      "args": ["-y", "ezssh-mcp"]
    }
  }
}

Or if installed globally:

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

Tools

Tool

Description

ssh_list_hosts

List available SSH hosts from config

ssh_execute

Execute commands on one or more hosts

ssh_transfer

Upload/download files via SFTP

ssh_execute

Execute commands on multiple hosts concurrently:

{
  "hosts": ["web1", "web2", "web3"],
  "command": "uptime"
}

Direct connection (without SSH config):

{
  "hosts": ["192.168.1.100"],
  "command": "uptime",
  "username": "root",
  "password": "your-password",
  "port": 22
}

ssh_transfer

Upload files:

{
  "direction": "upload",
  "hosts": ["web1", "web2"],
  "localPath": "./dist/app.zip",
  "remotePath": "/opt/app/app.zip"
}

Download files (with {host} placeholder for multiple hosts):

{
  "direction": "download",
  "hosts": ["web1", "web2"],
  "localPath": "./logs/{host}.log",
  "remotePath": "/var/log/app.log"
}

Resources

SSH hosts are exposed as MCP resources with URI format ssh://<host-name>.

Environment Variables

Variable

Description

Default

SSH_CONFIG_PATH

SSH config file path

~/.ssh/config

SSH_KNOWN_HOSTS_PATH

known_hosts file path

~/.ssh/known_hosts

SSH_AUTH_SOCK

SSH Agent socket path

System default

SSH_TIMEOUT

Connection timeout (ms)

30000

SSH_STRICT_HOST_KEY

Strict host key checking

false

SSH_MAX_CONCURRENCY

Max concurrent connections

10

Development

# Install dependencies
npm install

# Development mode (watch)
npm run dev

# Build
npm run build

# Type check
npm run typecheck

# Run tests
npm test

License

MIT

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
1dRelease cycle
4Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

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

Related MCP Servers

  • F
    license
    -
    quality
    D
    maintenance
    Enables remote file operations and command execution across multiple machines via SSH. Supports reading files, listing directories, and running commands on any host configured in your SSH config.
    Last updated
  • A
    license
    A
    quality
    D
    maintenance
    Enables secure SSH connections to multiple remote servers with support for command execution, file transfers (SFTP), directory listing, and both password and key-based authentication.
    Last updated
    7
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    Enables executing commands on remote SSH hosts, with full support for bastion/jump hosts and ~/.ssh/config, plus Slurm job management and rsync.
    Last updated
    3
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    Enables SSH command execution, file uploads/downloads, and multi-server management with zero-config inline credentials, supporting async jobs and AI-readable output.
    Last updated
    28
    2
    AGPL 3.0

View all related MCP servers

Related MCP Connectors

  • Let AI operate servers without SSH. Choose actions, approve risky changes, and audit every step.

  • Operate your Linux servers from your LLM. Every action runs through an auditable allowlist.

  • Issue, rotate and revoke scoped API-key passes for 25+ providers — the agent never sees a real key

View all MCP Connectors

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/laomeifun/ezssh-mcp'

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