Ssh MCP

by tufantunc• 852•• Scanned•Claim this listing•Request removal

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.

Scan summary: scanned Nov 5, 2026 at commit 4a84fc7. Seen able to run shell commands, read environment and secrets. Scan policy

Scanned
Full scan at 4a84fc7 · Nov 5, 2026
Scanned Builds Boots No undeclared egress Reproducible
Static code scanwarn
Secrets scanpass
Dependency audit0 known vulnerabilitiespass
Manifestserver.jsonpass
Buildpass
Boot & handshake15 toolspass
Network egresspass
Reproducible (×3)pass

Findings (18)

  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • high
    credential-access issue
    Details are available to the maintainer after claiming this listing.
  • low
    Possible example credential in docs/tests: private-key
    test/unit/guard/redactor.test.ts:17
  • low
    Possible example credential in docs/tests: generic-api-key
    3 matches in this file
    test/unit/guard/redactor.test.ts:43
  • low
    Possible example credential in docs/tests: jwt
    test/unit/guard/redactor.test.ts:25
  • low
    Possible example credential in docs/tests: gitlab-pat
    2 matches in this file
    test/unit/guard/redactor.test.ts:31
  • low
    package.json has a prepare script
    npm run build
    package.json
  • low
    Reads environment variables not listed in the manifest
    LOCALAPPDATA, XDG_DATA_HOME, SSH_AUTH_SOCK, APPDATA, XDG_CONFIG_HOME, USERPROFILE, SSH_MCP_TEST, SSH_MCP_DISABLE_MAIN
  • info
    Ignored the repo's scanner suppression config (1 file)
    .gitleaks.toml

Network activity

During install
nodejs.orgregistry.npmjs.org
While running
No connections

Tools exposed (15)

  • list-connections

    List all configured SSH profiles and their connection status. Use this to discover available hosts before running commands.

  • list-sessions

    List active sessions for a given SSH profile.

  • open-session

    Open 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-session

    Close 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-output

    Read recent output from a background session (e.g., tail -f logs).

  • read-command

    Execute 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-command

    Execute 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-command

    Execute 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-process

    Send a signal (INT, TERM, KILL) to a remote process by PID.

  • sftp-upload

    Upload 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-download

    Download a file from the remote server via SFTP.

  • sftp-list

    List a remote directory over SFTP, with a bounded number of entries and a bounded response size. Read-only.

  • sftp-upload-file

    Upload 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-file

    Download 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-config

    Report 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

Automated result for the commit shown. See our scan policy. View the scan log

Maintainers can claim the listing to rescan, or dispute a result.

Ssh MCP alternatives

View more →

Similar mcp servers in Other, ranked by GitHub stars. Compare licence, recent activity and scan status before you choose.

NameStarsLicenceLast updatedScan
Ssh MCP (this page)
tufantunc
852MITNov 1, 2026Scanned, no flagged issues
Github MCP Server
github
34kMITOct 30, 2026Scanned, no flagged issues
Fastapi MCP
tadata-org
12kMITNov 24, 2025Scanned, no flagged issues
GhidraMCP
LaurieWired
12kApache-2.0Oct 10, 2026Scanned, no flagged issues
MCP Go
mark3labs
9.2kMITOct 30, 2026Scanned, no flagged issues
Git MCP
idosal
8.5kApache-2.0May 8, 2026Scanned, no flagged issues