MCPpedia last refreshed this data
Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"vps": {
"env": {
"VPS_HOST": "203.0.113.10",
"VPS_USER": "deploy",
"VPS_KEY_PATH": "/Users/you/.ssh/id_ed25519"
},
"args": [
"/absolute/path/to/vps-mcp-server/dist/index.js"
],
"command": "node"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
An MCP (Model Context Protocol) server that gives AI assistants full control over a VPS via SSH. Execute commands, manage files, control services, monitor resources, manage Docker containers, and configure firewalls — all through a secure SSH tunnel.
No automated test available for this server. Check the GitHub README for setup instructions.
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
No package registry to scan.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in other
Pi Coding Agent extension (CLI-first) — routes bash/read/grep/find/ls through lean-ctx CLI for strong token savings. Optional MCP bridge can register advanced tools.
Compress tool outputs, logs, files, and RAG chunks before they reach the LLM. 60-95% fewer tokens, same answers. Library, proxy, MCP server.
One local source for the MCP servers, tools, and memory your AI coding agents share, synced into each tool's native config with a review gate and a receipt for every change. No daemon, no lock-in.
97% token reduction for AI coding sessions — zero deps, 21 languages, MCP server
MCP Security Weekly
Get CVE alerts and security updates for Vps Mcp Server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
An MCP (Model Context Protocol) server that gives AI assistants full control over a VPS via SSH. Execute commands, manage files, control services, monitor resources, manage Docker containers, and configure firewalls — all through a secure SSH tunnel.
| Tool | Description |
|---|---|
run_command | Execute any shell command on the VPS |
read_file | Read file contents via SFTP |
write_file | Create or overwrite files via SFTP |
list_directory | List directory contents with detailed info |
manage_service | Start, stop, restart, reload, enable, disable systemd services & view logs |
list_services | List systemd services filtered by state (running, failed, enabled) |
system_stats | Get CPU, memory, disk, network, uptime, and process stats |
docker | Manage Docker containers — list, start, stop, restart, logs, stats, images |
firewall | Manage UFW rules — status, allow, deny, delete, reset |
# Clone the repository
git clone https://github.com/your-username/vps-mcp-server.git
cd vps-mcp-server
# Install dependencies
pnpm install
# Build
pnpm build
Create a .env file from the example:
cp .env.example .env
Set the following environment variables:
| Variable | Required | Default | Description |
|---|---|---|---|
VPS_HOST | ✅ | — | Hostname or IP of your VPS |
VPS_USER | ✅ | — | SSH username |
VPS_KEY_PATH | ✅ | — | Absolute path to your SSH private key |
VPS_PORT | ❌ | 22 | SSH port |
VPS_KEY_PASSPHRASE | ❌ | — | Passphrase for the SSH key (if encrypted) |
Example .env:
VPS_HOST=203.0.113.10
VPS_USER=deploy
VPS_KEY_PATH=/Users/you/.ssh/id_ed25519
VPS_PORT=22
Add the server to your MCP client configuration:
{
"mcpServers": {
"vps": {
"command": "node",
"args": ["/absolute/path/to/vps-mcp-server/dist/index.js"],
"env": {
"VPS_HOST": "203.0.113.10",
"VPS_USER": "deploy",
"VPS_KEY_PATH": "/Users/you/.ssh/id_ed25519"
}
}
}
}
pnpm dev
pnpm build
pnpm start
run_commandExecute a shell command on the VPS.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
command | string | ✅ | — | The shell command to execute |
timeout | number | ❌ | 30000 | Timeout in milliseconds |
working_directory | string | ❌ | — | Directory to run the command in |
Returns: JSON with exit_code, stdout, and stderr.
read_fileRead the contents of a file on the VPS via SFTP.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
path | string | ✅ | — | Absolute path to the file |
max_lines | number | ❌ | — | Max lines to return (omit for full file) |
write_fileWrite content to a file on the VPS via SFTP.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
path | string | ✅ | — | Absolute path to the file |
content | string | ✅ | — | Content to write |
create_dirs | boolean | ❌ | false | Create parent directories if missing |
list_directoryList files and directories at a given path.
| Parameter | Type | Required | Default | Description |
|---|---|---|---|---|
path | string | ❌ | / | Directory path to list |
show_hidden | boolean | ❌ | false | Include dotfiles |
long_format | boolean | ❌ | true | Show permissions, size, date |
manage_serviceManage systemd services.
| Parameter | Type | Required | Default | Description | |---------