vpsnet
MCP server for managing VPSnet.com virtual private servers
Installation
npx vpsnet-mcpAsk AI about vpsnet
Powered by Claude Β· Grounded in docs
I know everything about vpsnet. Ask me about installation, configuration, usage, or troubleshooting.
0/500
Reviews
Documentation
vpsnet-mcp
Model Context Protocol (MCP) server for managing VPSnet.com virtual private servers. Gives AI assistants full control over your VPS infrastructure β order servers, manage plans, deploy SSH keys, and directly access your servers via SSH for software installation and configuration.
Features
- 49 tools covering the entire VPSnet.com API
- Account & profile management
- VPS lifecycle (start, stop, restart, reinstall OS)
- Plan changes (free upgrades/downgrades)
- DNS (rDNS/PTR records)
- SSH key management β deploy keys and gain direct server access
- API key management
- Backups, billing, invoices
- Ordering new VPS instances
- System status & pricing
Prerequisites
Before installing, ensure you have:
-
Node.js 18 or newer
- Check:
node --version - Linux/macOS: nodejs.org or your package manager
- Windows:
winget install OpenJS.NodeJS.LTSor download from nodejs.org - After installing Node.js, restart your terminal/editor
- Check:
-
For Claude Code (CLI or VS Code extension) users:
- Claude Code CLI installed globally:
npm install -g @anthropic-ai/claude-code - Check:
claude --version
- Claude Code CLI installed globally:
-
Active VPSnet.com account with an API key (see Getting an API key)
SSH access workflow
This MCP server manages your VPS infrastructure through the VPSnet.com API, including SSH key provisioning. Once an SSH key is deployed to a VPS, the AI assistant can connect directly using its environment's terminal (e.g. Claude Code's Bash tool, Cline's terminal).
Typical flow:
- AI reads the local machine's public key (
~/.ssh/id_rsa.pub) - Uploads it to VPSnet.com via
create_ssh_key - Deploys it to a VPS via
deploy_ssh_key(or passes it when ordering withorder_service) - Connects directly:
ssh root@<vps_ip>
Most AI coding environments (Claude Code, Cline, Cursor, Codex) have built-in terminal access, so the AI can SSH into your VPS immediately after deploying a key β no extra tools needed.
For environments without native SSH access, pair this with mcp-server-ssh for direct server connectivity via MCP tools.
Combined config:
{
"mcpServers": {
"vpsnet": {
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here"
}
},
"ssh": {
"command": "npx",
"args": ["-y", "mcp-server-ssh"]
}
}
}
Getting started
Choose your environment:
- Claude Code (CLI) β Terminal-based AI coding
- Claude Code for VS Code β VS Code extension
- Claude Desktop β Desktop app
- VS Code with GitHub Copilot β Copilot agent mode
- Cline / Cursor / Windsurf / Roo Code / Codex β Other clients
The standard config works across most MCP clients:
{
"mcpServers": {
"vpsnet": {
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here",
"VPSNET_API_TIMEOUT_MS": "45000"
}
}
}
}
Claude Code
claude mcp add vpsnet -- npx -y vpsnet-mcp
Set the environment variable before running:
export VPSNET_API_KEY="your_api_key_here"
export VPSNET_API_TIMEOUT_MS="45000"
Claude Code for VS Code Extension
This section is for the Claude Code VS Code extension, not GitHub Copilot. If you use VS Code with GitHub Copilot, see the VS Code with GitHub Copilot section instead.
Step 1: Install Claude Code CLI globally (required for the extension):
npm install -g @anthropic-ai/claude-code
Step 2: Add the MCP server via CLI:
claude mcp add vpsnet -- npx -y vpsnet-mcp
Step 3: Add your API key. Edit ~/.claude.json (or C:\Users\<username>\.claude.json on Windows), find the vpsnet server section and add the env block:
"vpsnet": {
"type": "stdio",
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here",
"VPSNET_API_URL": "https://api.vpsnet.com"
}
}
Step 4: Restart VS Code completely (Ctrl+Shift+P > "Reload Window" or close and reopen).
Step 5: Verify by asking Claude: "Get my VPSnet account info"
Windows users: Use PowerShell or CMD (not Git Bash) when running
claude mcp addcommands.
The
code --add-mcpcommand does NOT work with Claude Code extension β that's for VS Code Copilot only.
Claude Desktop
Follow the MCP install guide, use the standard config above.
Cline
Open Cline MCP settings and add to your cline_mcp_settings.json:
{
"mcpServers": {
"vpsnet": {
"type": "stdio",
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here"
},
"disabled": false
}
}
}
Codex
Use the Codex CLI:
codex mcp add vpsnet --env VPSNET_API_KEY=your_api_key_here -- npx -y vpsnet-mcp
Or edit ~/.codex/config.toml:
[mcp_servers.vpsnet]
command = "npx"
args = ["-y", "vpsnet-mcp"]
[mcp_servers.vpsnet.env]
VPSNET_API_KEY = "your_api_key_here"
If your system's default Node.js is older than 18 (common with nvm β check with node --version), wrap the command so nvm loads the right version:
codex mcp add vpsnet --env VPSNET_API_KEY=your_api_key_here -- bash -lc 'source ~/.nvm/nvm.sh >/dev/null 2>&1 && nvm use --silent 20 && npx -y vpsnet-mcp'
Note: Codex requires network access to install packages via npx. If you run Codex in a restricted sandbox without network, npx installs will fail.
Cursor
Go to Cursor Settings > MCP > Add new MCP Server. Use command type with the command npx -y vpsnet-mcp. Or add manually to .cursor/mcp.json:
{
"mcpServers": {
"vpsnet": {
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here"
}
}
}
}
Roo Code
Open Roo Code MCP settings and add to roo_mcp_settings.json:
{
"mcpServers": {
"vpsnet": {
"type": "stdio",
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_api_key_here"
},
"disabled": false
}
}
}
VS Code with GitHub Copilot
Install using the VS Code CLI:
code --add-mcp '{"name":"vpsnet","command":"npx","args":["-y","vpsnet-mcp"],"env":{"VPSNET_API_KEY":"your_api_key_here"}}'
Or add to your VS Code MCP config manually using the standard config above.
This is for GitHub Copilot agent mode in VS Code. For the Claude Code extension, see the Claude Code for VS Code Extension section.
Windsurf
Follow the Windsurf MCP documentation. Use the standard config above.
Windows Users
- Use PowerShell or CMD (not Git Bash) for
claude mcp addcommands - Config file location:
C:\Users\<YourUsername>\.claude.json - Install Node.js:
winget install OpenJS.NodeJS.LTSor download from nodejs.org - After installing Node.js, restart your terminal and VS Code
- Environment variables in Claude Code extension must be in the
envobject within.claude.json, NOT system environment variables
Environment variables
| Variable | Required | Description |
|---|---|---|
VPSNET_API_KEY | Yes | Your VPSnet.com API key |
VPSNET_API_URL | No | API base URL (defaults to https://api.vpsnet.com) |
Tools
Account
| Tool | Description |
|---|---|
get_account | Get account info (user ID, email, balance, VAT rate) |
get_profile | Get user profile details (name, address, company) |
Services
| Tool | Description |
|---|---|
list_services | List all active VPS services |
get_service | Get detailed info for a service |
get_service_graphs | Get performance graphs (CPU, RAM, disk, network) |
get_service_history | Get action history for a service |
Service Actions
| Tool | Description |
|---|---|
start_service | Start a stopped VPS |
stop_service | Stop a running VPS |
restart_service | Restart a VPS |
Service Settings
| Tool | Description |
|---|---|
change_hostname | Change VPS hostname |
change_root_password | Change VPS root password |
get_rdns | Get current rDNS records |
change_rdns | Change reverse DNS (PTR) record |
flush_iptables | Flush iptables rules (useful when locked out) |
change_title | Change service display title |
toggle_ipv6 | Enable or disable IPv6 |
toggle_extra_settings | Toggle ppp, fuse, tuntap, or nfs |
deploy_ssh_key | Deploy an SSH key to a VPS |
OS Reinstall
| Tool | Description |
|---|---|
get_os_options | Get available OS templates |
reinstall_os | Reinstall OS (destroys all data) |
Plan Changes (free)
| Tool | Description |
|---|---|
get_plan_options | Get available plans for upgrade/downgrade |
get_plan_resources | Get configurable resources for a plan |
calculate_plan_change | Preview plan change cost and new expiry |
change_plan | Change VPS plan |
Renewal & Billing
| Tool | Description |
|---|---|
get_period_options | Get billing period and auto-renewal options |
set_auto_renew | Enable or disable auto-renewal |
renew_service | Manually renew a service |
list_invoices | List invoices |
get_invoice | Get a specific invoice |
list_payments | List payment history |
Ordering
| Tool | Description |
|---|---|
get_order_plans | Get available plans for new VPS |
get_order_options | Get configurable options for a plan |
order_service | Order a new VPS |
Backups
| Tool | Description |
|---|---|
get_backup_status | Get backup status and configuration |
get_backup_history | Get backup history |
create_backup | Create a new backup (paid) |
SSH Keys
| Tool | Description |
|---|---|
list_ssh_keys | List all SSH keys |
get_ssh_key | Get a specific SSH key |
create_ssh_key | Add a new SSH key |
delete_ssh_key | Delete an SSH key |
API Keys
| Tool | Description |
|---|---|
list_api_keys | List all API keys |
create_api_key | Create a new API key |
update_api_key | Update an existing API key |
revoke_api_key | Revoke (delete) an API key |
History
| Tool | Description |
|---|---|
get_login_history | Get account login history |
get_management_history | Get management/activity history |
Public
| Tool | Description |
|---|---|
get_pricing | Get public pricing |
get_system_status | Get VPSnet.com system status |
get_faq | Get frequently asked questions |
Getting an API key
- Log in at vpsnet.com
- Go to Account > API Keys
- Click Create API Key
- Give it a name and copy the key
The key is shown only once β store it securely.
Troubleshooting
MCP tools not appearing in Claude Code VS Code extension
- Install Claude Code CLI:
npm install -g @anthropic-ai/claude-code - Verify:
claude --versionshould show a version number - Add server via CLI:
claude mcp add vpsnet -- npx -y vpsnet-mcp - Completely restart VS Code (not just reload window)
- Check
~/.claude.jsonfor correct configuration
claude: command not found
Install the Claude Code CLI globally:
npm install -g @anthropic-ai/claude-code
Verify your PATH includes npm global packages. On Windows, restart your terminal after installing.
Environment variables not working
For Claude Code extension, environment variables must be in the env object within .claude.json, NOT system environment variables:
"vpsnet": {
"type": "stdio",
"command": "npx",
"args": ["-y", "vpsnet-mcp"],
"env": {
"VPSNET_API_KEY": "your_actual_key_here"
}
}
API key errors
- Verify the key is correct (starts with
vpsnet_) - Keys are shown only once at creation β if lost, create a new one
- Check that the key hasn't expired (Account > API Keys)
deploy_ssh_key succeeded but SSH still fails
- All VPSnet.com servers use
rootas the SSH username - Key deployment is async β wait 15-30 seconds after deploying before attempting SSH
fetch is not defined or unexpected errors
This server requires Node.js 18+ (uses the built-in fetch API). If your default node is older (common with nvm setups), either:
- Set Node 18+ as default:
nvm alias default 20 - Or use the nvm wrapper shown in the Codex section
