Everything you need to give Claude Code internet access through VPN exit nodes.
Install the vpn-mcp package. This provides the MCP server binary that Claude Code will invoke.
The package installs the vpn-mcp command and its dependencies. No system-level changes.
Add the VPN MCP server to your Claude Code configuration. Create or edit .mcp.json in your project root (or ~/.claude/mcp.json for global access).
{
"mcpServers": {
"vpn": {
"command": "vpn-mcp"
}
}
}
From within Claude Code, call vpn_activate() to start the activation flow. The free tier activates instantly with no payment needed.
Connect to a VPN exit node. After connecting, use vpn_fetch() — the recommended tool for making requests through the VPN tunnel.
All tools available through the VPN MCP server in Claude Code.
| Tool | Description |
|---|---|
vpn_setup() |
Download VPN binary. Auto on first connect. |
vpn_activate() |
Activate account (free instant, paid via TON). |
vpn_connect(node?) |
Start VPN. Optionally specify region. |
vpn_disconnect() |
Stop VPN. |
vpn_switch(node) |
Change exit node. |
vpn_status() |
Account status, tier, quota. |
vpn_nodes() |
List available exit nodes. |
vpn_fetch(url, ...) |
HTTP request through VPN. Recommended. |
Base URL: api.vpn-mcp.net
| Endpoint | Auth | Description |
|---|---|---|
POST /api/mcp/register |
None | Register (send machine_fingerprint). Returns API key + tier. |
GET /api/mcp/status |
Bearer |
Status, tier limits, quota. |
GET /api/mcp/nodes |
Bearer |
List exit nodes (encrypted). |
POST /api/mcp/connect |
Bearer |
Get connection params (encrypted). |
{
"client_id": "uuid...",
"api_key": "vpn_mcp_...",
"tier": "free",
"payment": {
"network": "TON",
"currency": "USDT",
"address": "UQ...",
"amount": "1",
"pro_amount": "5"
}
}
{
"status": "active",
"tier": "free",
"tier_limits": {
"bandwidth_kb_per_sec": 256,
"requests_per_minute": 2,
"burst": 1
},
"quota": {
"used_bytes": 0,
"limit_bytes": 1073741824,
"percent": 0
}
}