by bvisible
MCP server for SSH: let Claude Code, Codex and any MCP client run commands, transfer files and manage servers over SSH, with human approval, an encrypted vault and a live audit trail. Desktop app and CLI included.
# Add to your Claude Code skills
git clone https://github.com/bvisible/mcp-ssh-managerGuides for using ai agents skills like mcp-ssh-manager.
Last scanned: 5/30/2026
{
"issues": [],
"status": "PASSED",
"scannedAt": "2026-05-30T15:31:22.616Z",
"npmAuditRan": true,
"pipAuditRan": true
}See how mcp-ssh-manager compares with popular alternatives.
mcp-ssh-manager is an open-source ai agents skill for AI coding assistants such as Claude Code, Codex CLI, and ChatGPT, built by bvisible. MCP server for SSH: let Claude Code, Codex and any MCP client run commands, transfer files and manage servers over SSH, with human approval, an encrypted vault and a live audit trail. Desktop app and CLI included. It has 539 GitHub stars.
Yes. mcp-ssh-manager passed SkillsLLM's automated security scan — a dependency vulnerability audit plus prompt-injection heuristics — with no high-severity issues. You can read the full report in the Security Report section on this page.
Clone the repository with "git clone https://github.com/bvisible/mcp-ssh-manager" and add it to your Claude Code skills directory (see the Installation section above).
mcp-ssh-manager is primarily written in JavaScript. It is open-source under bvisible on GitHub, so you can review or fork the full source.
Yes. SkillsLLM lists many other AI Agents skills you can browse and compare side by side. Open the AI Agents category from the badge at the top of this page, or use the Related Skills and comparison links further down to weigh mcp-ssh-manager against similar tools.
No comments yet. Be the first to share your thoughts!
From $49 · 30 days · terms & refunds
⚠️ Third-Party Software Notice
This skill is third-party open-source software developed and hosted independently on GitHub. SkillsLLM is an informational directory and does not control or maintain the underlying repository.
Any security checks, ratings, or warnings displayed by SkillsLLM are automated and limited in scope. They do not constitute a security certification or guarantee that the software is safe, error-free, or free from malicious code, vulnerabilities, compromised dependencies, or prompt-injection risks.
Review the source code, permissions, dependencies, and configuration before installing or running any third-party skill. Use is at your own risk. To the maximum extent permitted by applicable law, SkillsLLM is not liable for losses arising from third-party software.
Automated security scan — not a certification.
An MCP SSH server is the most dangerous tool you can hand an agent: a shell on machines that matter. Today, when your agent runs something on production, you find out afterwards — if you find out at all.
This one lets you watch, and lets you say no. It is also, on the boring days, simply a very good way to let an assistant do the server work you were going to do yourself.
Desktop application (4.0.3): one installation with its own runtime,
terminal, file browser and server settings. No separate Node.js or npm
installation. Download it:
| Platform | File | Signature |
|---|---|---|
| macOS, Apple silicon / Intel | …-arm64.dmg / …-x64.dmg |
Signed and notarized by Apple — opens normally |
| Windows x64 / arm64 | …-setup.exe |
Not code-signed in 4.0.x. Windows shows "Windows protected your PC": More info → Run anyway. Check the file against the SHA-256 in release-manifest-win32.json on the release (ssh-manager app does it for you). Signing comes in a later release. |
| Linux x64 | .deb, .AppImage |
Unsigned, as Linux packages usually are |
Already using npm / the CLI? npm update -g mcp-ssh-manager brings 4.0.3,
and the V4 engine runs without an interface, from your existing .env, TOML or
process variables — no automatic import, no forced wizard, no approval prompt
unless you enable one per server. The one behaviour that tightens is SSH
host-key verification; read that section of the
upgrade and rollback guide before upgrading. To stay on 3.8
for now, pin it: npm install -g mcp-ssh-manager@3.
From the engine to the application in one step. With a V4 engine installed,
ssh-manager app downloads the desktop application of the engine's own version,
checks it against the release (size and SHA-256 from the release manifest, and
on macOS Apple's signature and notarization), installs it and opens it — or just
opens it when it is already there. The browser interface of ssh-manager control
offers the same as one button. Your agents keep using the npm engine; the
application is the window on top of it. Nothing is downloaded unless you ask.
Without npm at all. The application carries the engine too, and your AI
tools can start that one: Options → AI tools lists Claude Code, Claude Desktop
and Codex, says which ssh-manager each one starts (npm's, the application's, or
none yet) and switches it in one click — no Node, no terminal. The same tab, in
ssh-manager control, shows npm users which version each tool really runs.
A switch rewrites that tool's one ssh-manager entry, keeps its environment
variables, and takes effect when the tool next starts; switching back is the
same click.
Updates. The application checks for a new version at launch and every six hours and says so where you will see it: a mark on the sidebar, Options → Updates (the running version, the one on offer, a Check now button, release notes) and, once per version, a notification. Downloading is a click, and installing is a second one (Restart to update) or happens when you quit. The npm engine updates with npm, on its own schedule. A change to the interface reaches npm users with the next npm release and application users with the next application release.
npm install -g mcp-ssh-manager # or: brew tap bvisible/mcp-ssh-manager https://github.com/bvisible/mcp-ssh-manager && brew install ssh-manager
ssh-manager server add # guided: host, user, key or password
claude mcp add ssh-manager mcp-ssh-manager
That's it. Restart Claude Code and ask it something.
OpenAI Codex — same install, then two files. In ~/.codex/config.toml:
[mcp_servers.ssh-manager]
command = "mcp-ssh-manager"
env = { SSH_CONFIG_PATH = "/Users/you/.codex/ssh-config.toml" }
startup_timeout_ms = 20000
And your servers in ~/.codex/ssh-config.toml:
[ssh_servers.production]
host = "prod.example.com"
user = "admin"
key_path = "~/.ssh/id_rsa"
default_dir = "/var/www"
group = "production"
Everything below works identically from Codex — same 37 tools, same config fields.
From source:
git clone https://github.com/bvisible/mcp-ssh-manager.git
cd mcp-ssh-manager && npm install
cd cli && ./install.sh
claude mcp add ssh-manager node /absolute/path/to/mcp-ssh-manager/src/index.js
The MCP engine needs no build. To use the interface (ssh-manager control) from a
checkout, build it once: npm run build:ui (the published package and the desktop
app already carry it).
Scopes — --scope project writes an .mcp.json your team can commit; --scope user enables it everywhere for you.
Prerequisites — Node 18+, on Linux, macOS or Windows. rsync for ssh_sync, sshpass only if you sync with password auth (brew install hudochenkov/sshpass/sshpass, or apt-get install sshpass).
No syntax to learn. Your assistant already knows how to use the 37 tools; you talk to it in your own words.
| You say | What happens |
|---|---|
| "Why is production slow right now?" | CPU, memory, disk, load average and the top processes, in one round trip |
| "Back up the database before I deploy." | A compressed, timestamped MySQL/PostgreSQL/MongoDB dump with a retention policy |
| "Tail the nginx error log on staging." | Live output, streamed as it happens |
| "Push ./dist to production:/var/www and restart nginx." | The files out, then the restart — with ownership, permissions and a rollback copy handled |
| "Which of my servers is running out of disk?" | Every server in the group, checked in parallel |
| "Open a tunnel to the production database." | Local port forward, so your GUI client just connects |
"Run docker ps on everything tagged production." |
One command, the whole group, sequential or parallel |
New in 4.0.0. The application is opt-in: with no vault and no approval enabled, the engine keeps working headlessly, exactly as 3.8.x. See the migration guide for host-key verification and recovery behaviour.
ssh-manager control # prints a local URL — or `ssh-manager app` for the desktop app
One thing in two wrappers. ssh-manager control runs the whole interface in a browser tab with nothing extra to install; the desktop builds for macOS, Windows and Linux are that same page with the engine inside them, so they need neither Node nor the npm package.
The desktop build adds the two things a browser tab cannot do: