Ssh MCP
MCP server exposing SSH control for Linux servers via Model Context Protocol.
Ssh MCP is an open-source mcp server by tufantunc, written mainly in TypeScript, with 852 GitHub stars and the MIT license. Its code was last updated Nov 1, 2026. The latest npm release is ssh-mcp 2.26.0, published Nov 12, 2026, with 19,226 downloads last week.
Scan summary: scanned Nov 5, 2026 at commit 4a84fc7. Seen able to run shell commands, read environment and secrets. Scan policy
How to install Ssh MCP
Built from the start command in the project's README: npx ssh-mcp --host=1.2.3.4 --user=root --password=hunter2. Check the README for required keys or settings.
claude mcp add ssh-mcp -- npx ssh-mcp --host=1.2.3.4 --user=root --password=hunter2{
"mcpServers": {
"ssh-mcp": {
"command": "npx",
"args": [
"ssh-mcp",
"--host=1.2.3.4",
"--user=root",
"--password=hunter2"
]
}
}
}{
"mcpServers": {
"ssh-mcp": {
"command": "npx",
"args": [
"ssh-mcp",
"--host=1.2.3.4",
"--user=root",
"--password=hunter2"
]
}
}
}code --add-mcp '{"name":"ssh-mcp","command":"npx","args":["ssh-mcp","--host=1.2.3.4","--user=root","--password=hunter2"]}'What Ssh MCP can touch
- The server lists a tool that does this.Run shell commandsListed as a tool: run-command
- Our checks did not find this. The tool may still do it.Run dynamic codeNot seen in this scan
- Our checks did not find this. The tool may still do it.Read or write filesNot seen in this scan
- Seen in this scan, either in the code or while it ran.Read environment and secretsFound in the code by our scan
- Our checks did not find this. The tool may still do it.Control a web browserNot seen in this scan
- Our checks did not find this. The tool may still do it.Connect to databasesNot seen in this scan
- Our checks did not find this. The tool may still do it.Read or send messagesNot seen in this scan
- Our checks did not find this. The tool may still do it.Touch money or tradingNot seen in this scan
- Our checks did not find this. The tool may still do it.Connect to the internetNo connections seen while running
"Not seen" means our checks did not find it, and the tool may still do it. Covers commit 4a84fc7, Nov 5, 2026. See the scan policy.
Before you install Ssh MCP
AgenticMart scanned Ssh MCP on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.
What it can access
- An MCP server is a program your AI app starts and talks to. A local one runs with your user's permissions: it can see the files, environment variables and network your account can.
- Based on its description and topics, it likely needs to run shell commands.
Before you install
- Keep tool-call approval on, and run it in a container if you can.
- Pin the version you reviewed instead of always installing the latest release.
- Read the tool list or scripts before the first run, and keep approval prompts on for actions that write, send or delete.
- Maintained by tufantunc on GitHub, 852 stars and 133 forks. Popularity is not proof of safety.
- Last code change: Nov 1, 2026.
- Open-source license: MIT.
Tools Ssh MCP exposes (15)
Listed by the server itself during our scan of commit 4a84fc7.
list-connectionsList all configured SSH profiles and their connection status. Use this to discover available hosts before running commands.
list-sessionsList active sessions for a given SSH profile.
open-sessionOpen a named session on a remote host. Use type="interactive" for stateful shell (CWD/env persists between commands) or type="background" for long-running processes.
close-sessionClose a named session. A background session's command is signalled on the host (INT, then TERM, then KILL) before its channel is dropped; an interactive session's shell is ended. The response says so if the command could not be signalled or had not stopped in time.
read-session-outputRead recent output from a background session (e.g., tail -f logs).
read-commandExecute a READ-ONLY command from an allowlist (ls, cat, grep, find, stat, df, etc.). This tool does NOT modify the system. Prefer this tool for all read operations. Single-line only: a command containing a line break is refused, so upload a multi-line script with sftp-upload and run it by path.
run-commandExecute an arbitrary shell command on the remote server. May modify the system. Commands classified destructive or privileged go through the approval gate; approvalPolicy on the profile decides whether that is a prompt, an automatic allow, or a refusal. Single-line only: a command containing a line
privileged-commandExecute a command with sudo elevation. Goes through the approval gate; approvalPolicy on the profile decides whether that is a prompt, an automatic allow, or a refusal. The sudo password is piped via stdin for the prompt only (never visible in process list); the command itself runs with stdin at /de
signal-processSend a signal (INT, TERM, KILL) to a remote process by PID.
sftp-uploadUpload a file to the remote server via SFTP (secure file transfer, not shell-based). Replaces an existing file at that path unconditionally — there is no overwrite flag and no way to require a new destination.
sftp-downloadDownload a file from the remote server via SFTP.
sftp-listList a remote directory over SFTP, with a bounded number of entries and a bounded response size. Read-only.
sftp-upload-fileUpload a local file to the remote host over SFTP, streaming it without passing the contents through model context. The local file must be inside the transferRoot directory the operator configured; without that setting this tool refuses. Use this for binary or large files; use sftp-upload for short t
sftp-download-fileDownload a remote file to local disk over SFTP, streaming it without passing the contents through model context. The destination must be inside the transferRoot directory the operator configured; without that setting this tool refuses. Use this for binary or large files; use sftp-download when you n
reload-configReport or reload the server's config file. action="status" (the default) shows the config path, when it was loaded, the sha256 of its bytes and the result of the last reload; never the contents. action="reload" re-reads the file, validates it exactly as startup does, and applies it only if every che
Ssh MCP is an open-source mcp server by tufantunc, written mainly in TypeScript. MCP server exposing SSH control for Linux servers via Model Context Protocol.
At a glance
- Stars
- 852
- Forks
- 133
- Language
- TypeScript
- License
- MIT
- Created
- Apr 2025
- Last update
- Nov 1, 2026
- Type
- MCP Server
- Price
- Free
Questions about Ssh MCP
What is Ssh MCP?
MCP server exposing SSH control for Linux servers via Model Context Protocol.
Who maintains Ssh MCP?
Ssh MCP is maintained by tufantunc on GitHub (tufantunc/ssh-mcp). AgenticMart lists it from public repository data.
Is Ssh MCP safe to use?
AgenticMart scanned Ssh MCP on Nov 5, 2026 with automated checks for hidden code, known-malicious packages, leaked secrets and vulnerable dependencies. The result covers one commit under our scan policy, so review what access you give it and check any advisories shown here.
What license does Ssh MCP use?
It is published under the MIT license.
Ssh MCP alternatives
View more →Similar mcp servers in Other, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.
| Name | Stars | Licence | Last updated | Scan |
|---|---|---|---|---|
| Ssh MCP (this page) tufantunc | 852 | MIT | Nov 1, 2026 | Scanned, no flagged issues |
| Github MCP Server github | 34k | MIT | Oct 30, 2026 | Scanned, no flagged issues |
| Fastapi MCP tadata-org | 12k | MIT | Nov 24, 2025 | Scanned, no flagged issues |
| GhidraMCP LaurieWired | 12k | Apache-2.0 | Oct 10, 2026 | Scanned, no flagged issues |
| MCP Go mark3labs | 9.2k | MIT | Oct 30, 2026 | Scanned, no flagged issues |
| Git MCP idosal | 8.5k | Apache-2.0 | May 8, 2026 | Scanned, no flagged issues |