MCP gateway for controlled SSH access with per-client auth, command policies, and audit logging.
Connect Runs on your machine
claude mcp add ssh-mcp -e CONFIG_DIR=<CONFIG_DIR> -e LOG_DIR=<LOG_DIR> -e CONFIG_API_ENABLED=<CONFIG_API_ENABLED> -e CONFIG_API_TOKEN=<CONFIG_API_TOKEN> -- docker run -i --rm ghcr.io/gelse/ssh-mcp:0.3.0
{
"mcpServers": {
"ssh-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/gelse/ssh-mcp:0.3.0"
],
"env": {
"CONFIG_DIR": "<CONFIG_DIR>",
"LOG_DIR": "<LOG_DIR>",
"CONFIG_API_ENABLED": "<CONFIG_API_ENABLED>",
"CONFIG_API_TOKEN": "<CONFIG_API_TOKEN>"
}
}
}
}
{
"mcpServers": {
"ssh-mcp": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/gelse/ssh-mcp:0.3.0"
],
"env": {
"CONFIG_DIR": "<CONFIG_DIR>",
"LOG_DIR": "<LOG_DIR>",
"CONFIG_API_ENABLED": "<CONFIG_API_ENABLED>",
"CONFIG_API_TOKEN": "<CONFIG_API_TOKEN>"
}
}
}
}
{
"servers": {
"ssh-mcp": {
"type": "stdio",
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/gelse/ssh-mcp:0.3.0"
],
"env": {
"CONFIG_DIR": "<CONFIG_DIR>",
"LOG_DIR": "<LOG_DIR>",
"CONFIG_API_ENABLED": "<CONFIG_API_ENABLED>",
"CONFIG_API_TOKEN": "<CONFIG_API_TOKEN>"
}
}
}
}
Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.
Tools
This server runs locally, so its tools are listed by your MCP client once it starts.
Environment variables
| Name | Description |
|---|---|
CONFIG_DIROptional | Directory containing ssh-mcp-config.json |
LOG_DIROptional | Directory for JSONL audit logs |
CONFIG_API_ENABLEDOptional | Enable the configuration REST API and web dashboard |
CONFIG_API_TOKENOptional, secret | Bearer token for the configuration API |
Details
| Package | ghcr.io/gelse/ssh-mcp:0.3.0 (OCI, streamable-http) |
| First published | 14 Sep 2026 |
| Last updated | 14 Sep 2026 |
| Registry name | io.github.gelse/ssh-mcp |
More security servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
