Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"io-github-danielecr-realssh-mcp": {
"args": [
"-y",
"@danielecr/realssh-mcp"
],
"command": "npx"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
A Model Context Protocol (MCP) server that enables SSH remote command execution by delegating entirely to the system ssh binary. This means ssh-agent, ProxyCommand, ~/.ssh/config, jump hosts, and every other OS-level SSH feature work out of the box — no Node.js crypto, no native addons.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y '@danielecr/realssh-mcp' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked @danielecr/realssh-mcp against OSV.dev.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in devops / developer-tools
Read, write, and manage files on the local filesystem
A Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
Manage Supabase projects — databases, auth, storage, and edge functions
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
MCP Security Weekly
Get CVE alerts and security updates for io.github.danielecr/realssh-mcp and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
A Model Context Protocol (MCP) server that enables SSH remote command execution by delegating entirely to the system ssh binary. This means ssh-agent, ProxyCommand, ~/.ssh/config, jump hosts, and every other OS-level SSH feature work out of the box — no Node.js crypto, no native addons.
Instead of implementing the SSH protocol in Node.js, this server spawns ssh as a child process and pipes the output back to the MCP client. Authentication, key discovery, and connection routing are handled by your OS, exactly as if you ran ssh yourself in a terminal.
Requirements: ssh must be installed and available in PATH (standard on macOS and Linux).
ssh-agent, ~/.ssh/config, and key files automaticallyssh_test tool to verify reachability before running commandssshnpm install -g @danielecr/realssh-mcp
git clone https://github.com/danielecr/realssh-mcp.git
cd realssh-mcp
npm install
npm run build
After installing the package globally, add the server to your MCP configuration. In VS Code, open the MCP config file via Command Palette → MCP: Open User Configuration and add:
{
"servers": {
"realssh": {
"type": "stdio",
"command": "realssh-mcp"
}
}
}
Then run MCP: List Servers to verify the server is active.
ssh_executeExecute a command on a remote server via SSH.
Parameters:
host (string, required): SSH server hostname or IP addresscommand (string, required): Command to execute on the remote serverusername (string, optional): SSH username. Defaults to the current OS userport (number, optional): SSH server port (default: 22)timeout (number, optional): Command timeout in milliseconds (default: 30000)agentForward (boolean, optional): Enable SSH agent forwarding -A (default: false)extraArgs (string[], optional): Extra SSH arguments (e.g., ["-o", "StrictHostKeyChecking=no"])Example:
{
"host": "prod-web-01",
"command": "df -h"
}
{
"host": "192.168.1.100",
"username": "deploy",
"command": "systemctl status nginx"
}
ssh_testTest SSH connectivity to a remote host (runs echo ok and checks the response).
Parameters:
host (string, required): SSH server hostname or IP addressusername (string, optional): SSH usernameport (number, optional): SSH server port (default: 22)extraArgs (string[], optional): Extra SSH argumentsHosts, aliases, jump hosts, and identity files are configured in ~/.ssh/config — not in the MCP server. This is intentional: the OS ssh binary reads that file natively.
Example ~/.ssh/config:
Host prod
HostName prod.example.com
User deploy
ProxyJump bastion
Host bastion
HostName bastion.example.com
User admin
IdentityFile ~/.ssh/bastion_ed25519
With the above config, "host": "prod" works with no extra parameters.
BatchMode=yes is set by default, preventing the ssh process from hanging on interactive prompts.MIT