Stdio MCP server that inspects and (with confirmation) mutates one VPS over SSH.
Connect Runs on your machine
claude mcp add vps-ops-mcp -e VPS_SSH_KEY_PATH=<VPS_SSH_KEY_PATH> -e VPS_HOST=<VPS_HOST> -e VPS_USER=<VPS_USER> -e VPS_PORT=<VPS_PORT> -e VPS_COMPOSE_DIR=<VPS_COMPOSE_DIR> -e VPS_COMMAND_TIMEOUT_MS=<VPS_COMMAND_TIMEOUT_MS> -e VPS_LOG_MAX_BYTES=<VPS_LOG_MAX_BYTES> -e VPS_ALLOW_MUTATIONS=<VPS_ALLOW_MUTATIONS> -e VPS_SSH_KEY_PASSPHRASE=<VPS_SSH_KEY_PASSPHRASE> -- npx -y @koller-nexus/[email protected]
{
"mcpServers": {
"vps-ops-mcp": {
"command": "npx",
"args": [
"-y",
"@koller-nexus/[email protected]"
],
"env": {
"VPS_SSH_KEY_PATH": "<VPS_SSH_KEY_PATH>",
"VPS_HOST": "<VPS_HOST>",
"VPS_USER": "<VPS_USER>",
"VPS_PORT": "<VPS_PORT>",
"VPS_COMPOSE_DIR": "<VPS_COMPOSE_DIR>",
"VPS_COMMAND_TIMEOUT_MS": "<VPS_COMMAND_TIMEOUT_MS>",
"VPS_LOG_MAX_BYTES": "<VPS_LOG_MAX_BYTES>",
"VPS_ALLOW_MUTATIONS": "<VPS_ALLOW_MUTATIONS>",
"VPS_SSH_KEY_PASSPHRASE": "<VPS_SSH_KEY_PASSPHRASE>"
}
}
}
}
{
"mcpServers": {
"vps-ops-mcp": {
"command": "npx",
"args": [
"-y",
"@koller-nexus/[email protected]"
],
"env": {
"VPS_SSH_KEY_PATH": "<VPS_SSH_KEY_PATH>",
"VPS_HOST": "<VPS_HOST>",
"VPS_USER": "<VPS_USER>",
"VPS_PORT": "<VPS_PORT>",
"VPS_COMPOSE_DIR": "<VPS_COMPOSE_DIR>",
"VPS_COMMAND_TIMEOUT_MS": "<VPS_COMMAND_TIMEOUT_MS>",
"VPS_LOG_MAX_BYTES": "<VPS_LOG_MAX_BYTES>",
"VPS_ALLOW_MUTATIONS": "<VPS_ALLOW_MUTATIONS>",
"VPS_SSH_KEY_PASSPHRASE": "<VPS_SSH_KEY_PASSPHRASE>"
}
}
}
}
{
"servers": {
"vps-ops-mcp": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@koller-nexus/[email protected]"
],
"env": {
"VPS_SSH_KEY_PATH": "<VPS_SSH_KEY_PATH>",
"VPS_HOST": "<VPS_HOST>",
"VPS_USER": "<VPS_USER>",
"VPS_PORT": "<VPS_PORT>",
"VPS_COMPOSE_DIR": "<VPS_COMPOSE_DIR>",
"VPS_COMMAND_TIMEOUT_MS": "<VPS_COMMAND_TIMEOUT_MS>",
"VPS_LOG_MAX_BYTES": "<VPS_LOG_MAX_BYTES>",
"VPS_ALLOW_MUTATIONS": "<VPS_ALLOW_MUTATIONS>",
"VPS_SSH_KEY_PASSPHRASE": "<VPS_SSH_KEY_PASSPHRASE>"
}
}
}
}
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 |
|---|---|
VPS_SSH_KEY_PATHRequired, secret | Absolute path to a readable SSH private key |
VPS_HOSTOptional | SSH hostname of the single target VPS |
VPS_USEROptional | SSH username |
VPS_PORTOptional | SSH port |
VPS_COMPOSE_DIROptional | Absolute Compose directory on the remote host |
VPS_COMMAND_TIMEOUT_MSOptional | Remote command timeout in milliseconds |
VPS_LOG_MAX_BYTESOptional | Stdout/stderr byte cap for remote commands |
VPS_ALLOW_MUTATIONSOptional | Set false to reject every mutation tool |
VPS_SSH_KEY_PASSPHRASEOptional, secret | Optional key passphrase; prefer ssh-agent instead |
Details
| Package | @koller-nexus/[email protected] (NPM, stdio) |
| First published | 22 Sep 2026 |
| Last updated | 22 Sep 2026 |
| Registry name | io.github.koller-nexus/vps-ops-mcp |
More other servers See all
Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.
