Ssh Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited Ssh Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
A Model Context Protocol (MCP) server that exposes SSH, SFTP, and tunnel capabilities as AI tools. Connect any MCP-compatible AI app to your remote servers.
| Category | Tools |
|---|---|
| Connections | ssh_connect, ssh_disconnect, ssh_list_connections |
| Profiles | ssh_save_profile, ssh_list_profiles, ssh_delete_profile |
| Exec | ssh_exec |
| SFTP | sftp_upload, sftp_download, sftp_list, sftp_stat, sftp_mkdir, sftp_rm |
| Tunnels | ssh_forward_local, ssh_forward_remote, ssh_list_tunnels, ssh_close_tunnel |
git clone <your-repo-url>
cd ssh-mcp
npm install
npm run buildThe built entry point will be at dist/index.js.
Replace /path/to/ssh-mcp with the actual absolute path where you cloned the repo.>
- Windows example:D:/projects/ssh-mcp- macOS/Linux example:/home/user/ssh-mcp
Config file location:
%APPDATA%\Claude\claude_desktop_config.json~/Library/Application Support/Claude/claude_desktop_config.jsonOpen the file and add the mcpServers block (merge with existing content if needed):
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/path/to/ssh-mcp/dist/index.js"]
}
}
}Windows example:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["D:/projects/ssh-mcp/dist/index.js"]
}
}
}Steps:
Config file location:
C:\Users\<YOUR_USERNAME>\.gemini\antigravity\mcp_config.json~/.gemini/antigravity/mcp_config.jsonCreate or edit mcp_config.json:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/path/to/ssh-mcp/dist/index.js"]
}
}
}Alternatively via the UI:
Steps:
MCP servers in VS Code can be scoped to a workspace or configured globally.
#### Option A — Workspace (recommended)
Create .vscode/mcp.json in your project root:
{
"servers": {
"ssh": {
"type": "stdio",
"command": "node",
"args": ["/path/to/ssh-mcp/dist/index.js"]
}
}
}#### Option B — Global (user settings)
Open VS Code settings (Ctrl+, / Cmd+,) → search for MCP → click Edit in settings.json and add:
{
"mcp": {
"servers": {
"ssh": {
"type": "stdio",
"command": "node",
"args": ["/path/to/ssh-mcp/dist/index.js"]
}
}
}
}Steps:
Ctrl+Alt+I / Cmd+Alt+I)Requires: VS Code 1.99+ with the GitHub Copilot extension
Config file location: ~/.config/opencode/config.json
Add the mcp block to your config (create the file if it doesn't exist):
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"ssh": {
"type": "local",
"command": ["node", "/path/to/ssh-mcp/dist/index.js"],
"enabled": true
}
}
}Steps:
opencodeThecommandfield in Opencode is an array (command + args combined), unlike other apps that split them intocommand+args.
LM Studio supports MCP servers since version 0.3.17. It uses the same mcpServers format as Claude Desktop.
Config file via UI (easiest):
mcp.json format:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["/path/to/ssh-mcp/dist/index.js"]
}
}
}Windows example:
{
"mcpServers": {
"ssh": {
"command": "node",
"args": ["D:/projects/ssh-mcp/dist/index.js"]
}
}
}Steps:
mcp.json via the UI or directly on diskNote: LM Studio shows a tool-call confirmation dialog before running each tool, letting you review and optionally edit the arguments first.
>
Requires: LM Studio 0.3.17+
When connecting with ssh_connect, three auth methods are supported:
| Method | When to use |
|---|---|
password | Username + password login |
key | Private key file (PEM format) |
agent | SSH agent (e.g. ssh-agent, Pageant on Windows) |
Password example:
ssh_connect host=192.168.1.10 username=admin auth=password password=secretKey example:
ssh_connect host=192.168.1.10 username=admin auth=key privateKeyPath=/home/user/.ssh/id_rsaAgent example:
ssh_connect host=192.168.1.10 username=admin auth=agentTo avoid re-entering credentials every session, save a profile:
ssh_save_profile name=myserver host=192.168.1.10 username=admin auth=passwordThen connect using:
ssh_connect profileName=myserver password=secret# Run without building (uses tsx)
npm run dev
# Build to dist/
npm run build
# Type-check only
npm run typecheck| Problem | Fix |
|---|---|
| Tools don't appear in the app | Make sure you ran npm run build and dist/index.js exists |
Cannot find module error | Run npm install then npm run build again |
| Connection refused | Check the host/port and that the SSH service is running on the remote |
| Auth failed | Double-check username, password, or key path and permissions |
| Antigravity doesn't load tools | Reload MCP servers from the UI or restart Antigravity |
| VS Code tools missing | Ensure you're in Agent mode in Copilot Chat, not Ask/Edit mode |
| LM Studio tools missing | Requires v0.3.17+; make sure you're using a model that supports tool use |
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.