📦
Ssh MCP Go
MCP server for SSH operations using mcp-go and goph
0 installs
1 stars
Trust: 53 — Fair
Devtools
Installation
npx ssh-mcp-goAsk AI about Ssh MCP Go
Powered by Claude · Grounded in docs
I know everything about Ssh MCP Go. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Loading tools...
Reviews
Documentation
ssh-mcp-go
MCP server for SSH operations built with:
It exposes three tools over stdio:
ssh_exec: run a remote command and return outputssh_upload: upload a local file or directory to remotessh_download: download a remote file or directory to localssh_exec_dynamic: run a remote command with per-call SSH parameters
Requirements
- Go 1.20+ (recommended)
- An SSH server you can reach
Environment Variables
SSH_SERVER(required):user@hostorhostSSH_PORT(optional, default 22)SSH_KEY(optional): path to private keySSH_PASSPHRASEorSSH_KEY_PASSPHRASE(optional): private key passphraseSSH_PASSWORD(optional): password auth (also used for keyboard-interactive)SSH_USER(optional): username whenSSH_SERVERdoes not includeuser@
Auth priority is simple: if SSH_KEY is set, its key auth is included; if
SSH_PASSWORD is set, password auth is included. At least one must be provided.
Build
go build -o ssh-mcp-go .
Run (stdio)
SSH_SERVER=user@host \
SSH_PORT=22 \
SSH_KEY=~/.ssh/id_rsa \
SSH_PASSPHRASE=your_passphrase \
./ssh-mcp-go
Tool Usage (example)
From an MCP client, call tools with the following arguments:
ssh_execcommand(string)
ssh_uploadlocal_path(string)remote_path(string)
ssh_downloadremote_path(string)local_path(string)
ssh_exec_dynamicserver(string, host or user@host)user(string, required if server has no user@)port(int, optional)password(string, optional)key_path(string, optional)passphrase(string, optional)command(string)
Notes
- Host key verification is not enforced (uses
InsecureIgnoreHostKey). - Directory transfers are recursive.
