S
Ssh MCP Go
by @FrontMage
MCP server for SSH operations using mcp-go and goph
Created 12/20/2025
Updated 2 days ago
README
Repository documentation and setup instructions
ssh-mcp-go
MCP server for SSH operations built with:
- https://github.com/mark3labs/mcp-go
- https://github.com/melbahja/goph
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 local
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)
Notes
- Host key verification is not enforced (uses
InsecureIgnoreHostKey). - Directory transfers are recursive.
Quick Setup
Installation guide for this server
Installation Command (package not published)
git clone https://github.com/FrontMage/ssh-mcp-go
Manual Installation: Please check the README for detailed setup instructions and any additional dependencies required.
Cursor configuration (mcp.json)
{
"mcpServers": {
"frontmage-ssh-mcp-go": {
"command": "git",
"args": [
"clone",
"https://github.com/FrontMage/ssh-mcp-go"
]
}
}
}