{"name":"io.github.the-nine-nation/remote-ssh-mcp","slug":"the-nine-nation-remote-ssh-mcp","title":null,"description":"Persistent stateful remote SSH sessions for AI agents via MCP + OpenSSH.","url":"https://mcp.market/server/the-nine-nation-remote-ssh-mcp","rating":null,"grade":"A","score":92,"certified":false,"status":"active","category":"other","tags":[],"presence":{"score":26,"stars":1,"forks":0,"downloads_week":34,"last_push_at":"2026-09-24T02:32:45.000Z","license":"MIT"},"uptime":null,"claimed":false,"transport":"npm","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/the-nine-nation/remote-ssh-mcp","website":null,"version":"0.2.0","remotes":[],"packages":[{"registryType":"npm","identifier":"@zyluo/remote-ssh-mcp","version":"0.2.0","transport":{"type":"stdio"},"environmentVariables":[{"description":"Comma-separated additional SSH Host aliases to allow","format":"string","name":"SSH_MCP_ALLOWED_HOSTS"},{"description":"Path to remote-ssh-mcp config.json","format":"string","name":"SSH_MCP_CONFIG"}]}],"tools":[{"name":"ssh_close","description":"Close the remote shell and SSH connection, clean its private temporary directory, and invalidate the id. Close a dirty session and call ssh_open for a clean environment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ssh_hosts","description":"List allowed OpenSSH Host aliases discovered from the local ssh_config (and explicit allowlist). Returns only safe connection metadata: alias, hostname, user, port, proxy_jump. Never returns private keys, IdentityFile paths, agent sockets, or ProxyCommand. Pass reload=true after editing ~/.ssh/config to re-parse without restarting the MCP server. Use an alias from this list with ssh_open.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ssh_interrupt","description":"Send Ctrl-C to the current foreground process group and wait for the shell protocol to recover. The session is kept only when recovery is confirmed. Returns nothing_to_interrupt when idle.","write_action":true,"price_micros":0,"input_schema":null},{"name":"ssh_list","description":"List all live sessions with host, cwd, state, last exit code, idle time, idle-reap countdown, and connection capacity. Use this to recover valid ids; never invent one.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ssh_open","description":"Open a new persistent remote bash shell for an allowed ssh_config Host alias from ssh_hosts. Each call creates a clean session with a new id. Credentials come only from local OpenSSH configuration/agent; passwords and private keys are never accepted as arguments and must not be read from disk by the model.","write_action":false,"price_micros":0,"input_schema":null},{"name":"ssh_peek","description":"Observe the current foreground command and its latest output without starting another command. When status=running, optional wait_sec (default 0) long-polls this MCP call until the command finishes or the wait expires—prefer a positive wait_sec over busy-looping. wait_sec never stops the remote command. Returns the newest lines in chronological order, limited independently for stdout and stderr; l","write_action":false,"price_micros":0,"input_schema":null},{"name":"ssh_run","description":"","write_action":true,"price_micros":0,"input_schema":null}],"scan":{"score":92,"grade":"A","scanned_at":"2026-09-24T05:06:33.807Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-24T05:06:33.749Z","components":{"code":{"score":25,"max":25,"notes":["23 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":12,"max":15,"notes":["local package, no credentials required"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":8,"max":10,"notes":["registry namespace matches repository owner","GitHub account older than a year"]}},"findings":[],"inputs":{"packages":[{"registryType":"npm","identifier":"@zyluo/remote-ssh-mcp","version":"0.2.0","found":true,"license":"MIT","hasInstallScripts":false,"dependencyCount":2,"publishedAt":"2026-08-05T03:42:45.362Z","repositoryUrl":"git+https://github.com/the-nine-nation/remote-ssh-mcp.git","weeklyDownloads":34}],"repo":{"found":true,"owner":"the-nine-nation","repo":"remote-ssh-mcp","archived":false,"pushedAt":"2026-09-24T02:32:45Z","stars":1,"forks":0,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/103977945?v=4","ownerCreatedAt":"2022-04-19T02:49:38Z","license":"MIT"},"icon":{"url":"https://avatars.githubusercontent.com/u/103977945?v=4&s=128","source":"github"},"presence":{"stars":1,"forks":0,"downloadsWeek":34,"license":"MIT","lastPushAt":"2026-09-24T02:32:45.000Z","score":26}}}},"grade_history":[],"reviews":[]}