Buy a VPS or dedicated server with your AI agent — paid in crypto, no KYC.
ServPrivacy is built so AI agents can purchase, deploy and manage servers end-to-end without a human in the loop. Three integration paths, one domain, zero KYC, 14 cryptocurrencies including Monero. Compatible with Claude (Desktop / Code / Managed Agents), OpenClaw, ChatGPT, Cursor, Continue, Cline, n8n, and any custom HTTP client.
Three integration paths, one domain
Pick the one that fits your stack. They all hit the same backend, the same accounts, the same /api/v1/* logic.
MCP — for Claude, Cursor, Continue, Cline
Add https://servprivacy.com/mcp to your MCP config. Eight tools instantly available: list_plans, list_locations, quote, create_order, payment_status, server_credentials, server_action, agent_help.
REST — for any HTTP client
Plain JSON endpoints under /api/v1/. Bearer auth (auto-issued on first order, no signup). OpenAPI 3.1 spec at /openapi.json. Works from curl, Python, Go, anything that speaks HTTP.
x402-light — instant USDC
For agents with their own wallet. Send X-Payment-Mode: x402 to /api/v1/orders → 402 with USDC deposit instructions in one round trip. No facilitator required.
How it works — 4 calls from discovery to credentials
No SDK to install. No OAuth dance. No email. The first call returns your account token; the next three move the order from pending to active.
1Discover what is available
Read the catalog and the list of jurisdictions. Both endpoints are open (no auth) and cacheable for 5 minutes.
2Create the order
POST your choice. The response contains a payment address (per-order, generated by FixedFloat), the exact crypto amount, an expiry, and — if you didn't send a Bearer — a fresh account_token. STORE THE TOKEN: it is the only way to manage the server later. We do not have a recovery path.
3Pay and poll
Send the crypto to the address. Then poll the order until status reaches "active" (typically 1–5 minutes for VPS once the deposit is detected).
4Receive the credentials
Once the order is active, fetch the server. The IP address, root password, SSH port and a console URL are returned. SSH in, you're done.
# no Bearer needed — account is auto-created curl -X POST https://servprivacy.com/api/v1/orders \ -H 'Content-Type: application/json' \ -d '{ "type": "vps", "plan": "IS-S", "location": "iceland", "os": "ubuntu-24", "crypto": "XMR", "billing": 3 }' # → 201 Created { "ok": true, "order_id": 12345, "server_id": 9876, "account_token": "AAAA-BBBB-CCCC-DDDD", // store this! "payment": { "crypto": "XMR", "address": "47abc...", "amount_crypto": "0.4521", "expires_in": 3600 }, "status_url": "https://servprivacy.com/api/v1/orders/12345" }
MCP setup (60 seconds)
Add this snippet to your MCP-aware client (Claude Desktop, Claude Code, Cursor, Continue, Cline). After restart, ask: "Buy me an Iceland VPS-S in Ubuntu 24.04, paid in XMR".
{
"mcpServers": {
"servprivacy": {
"url": "https://servprivacy.com/mcp"
}
}
}
Tools exposed by the MCP server:
list_planslist_locationsquotecreate_orderpayment_statusserver_credentialsserver_actionagent_helpThen call agent_help() inside Claude — it returns the canonical 4-call recipe with examples, baked into the tool itself.
x402-light — single round trip with USDC
Send the X-Payment-Mode: x402 header to /api/v1/orders. The server replies HTTP 402 with USDC (ERC-20) deposit instructions both in the X-Payment-Required header and in the JSON body. Send the USDC, poll the URL, get credentials. Note: this is "x402-light" — bit-compatible with x402 clients that detect facilitator: null and fall back to a regular USDC transfer rather than EIP-3009 signing.
curl -X POST https://servprivacy.com/api/v1/orders \ -H 'Content-Type: application/json' \ -H 'X-Payment-Mode: x402' \ -d '{"type":"vps","plan":"IS-S","location":"iceland","os":"ubuntu-24","billing":1}' # ← HTTP/1.1 402 Payment Required # ← X-Payment-Required: # {"network":"erc20","token":"USDCETH","amount_usdc":"14.99", # "recipient":"0xff...","expires_in":900,"poll_url":"..."}
Test mode (dry-run) — never spend real crypto while integrating
Add ?dry_run=1 (or header X-Dry-Run: 1, or body field dry_run: true) to any /api/v1/* endpoint. The synthetic order auto-confirms after ~60 seconds, returns RFC 5737 IPs, and never touches a real database row or FixedFloat call. Perfect for validating an agent integration before touching mainnet.
# no real crypto spent, no real server provisioned curl -X POST 'https://servprivacy.com/api/v1/orders?dry_run=1' \ -H 'Content-Type: application/json' \ -d '{"type":"vps","plan":"IS-S","location":"iceland","crypto":"XMR","billing":1}'
Use cases — what agents do with ServPrivacy
These are the patterns we see (and design for) in agentic infrastructure today.
Spin up a scraper VPS in 30 seconds
A research agent needs a clean IP in a specific jurisdiction. It calls create_order, gets credentials, runs the job, then terminates.
Agent-owned compute supply chain
A long-running autonomous agent (Claude Managed Agent, custom orchestrator) provisions its own infrastructure as it scales horizontally — no human gatekeeper.
BYO compute for sensitive workloads
A user with privacy concerns asks Claude to host an LLM, a Tor relay, a Monero node or a self-hosted VPN — payment, deployment, SSH key handover all happen agent-side.
Disposable infrastructure for security research
Penetration testing tools, malware sandboxes, exit nodes — anything that benefits from being short-lived and unattributable. Agents create, use, and destroy.
Multi-region deployment from one prompt
Deploy the same image to Iceland, Panama and Switzerland in a single agent loop, hedge against jurisdiction-specific takedowns.
Programmatic resale by other agents
Higher-level agent platforms can wrap our API to offer "anonymous hosting" as a tool to their own users — friction-free reselling.
Why ServPrivacy works for agents
Six properties that make ServPrivacy uniquely well-suited to autonomous and assisted purchasing.
Zero KYC
No name, email, phone, ID, captcha. The agent pays and gets the server — that's it.
Instant deployment
VPS live in under 5 minutes. Dedicated typically 15–60 minutes. No queue, no human approval.
14 cryptocurrencies
BTC, XMR, ETH, USDT, USDCETH, XRP, LTC, SOL, TRX, TON, DOGE, POL, BCH, DASH. Same API for all.
7 jurisdictions
Iceland, Panama, Moldova, Romania, Switzerland, Netherlands, Russia. Filter by location.
Test mode
Validate your integration end-to-end without spending. dry_run=1 on every endpoint.
Two flows, one API
Same endpoint serves Claude-with-human-paying and fully autonomous agent-with-own-wallet.
Discover the API in one curl
Or open https://servprivacy.com/openapi.json for the full OpenAPI 3.1 spec.
FAQ
Common questions about integrating ServPrivacy with AI agents.
Which AI assistants can use this?
Any MCP-aware client: Claude Desktop, Claude Code, Cursor, Continue, Cline, and any client implementing the Model Context Protocol. For agents without MCP support (OpenClaw, ChatGPT plugins, custom Python scripts, n8n workflows, Anthropic Managed Agents), the same functionality is available via plain HTTPS calls to /api/v1/* — exactly the same backend, same auth, same flow.
Do I need an account before placing the first order?
No. POST /api/v1/orders without any Authorization header and the response will include a fresh account_token (16-character string in AAAA-BBBB-CCCC-DDDD format). Store it. That token is the only way to manage your server afterwards — we have no email, no recovery path, nothing else.
Is x402-light compatible with the official Coinbase x402 client?
Partially. We label our 402 responses with x402_light: true and facilitator: null. A spec-compliant x402 client should detect facilitator: null and either fall back to a regular USDC transfer (which we accept normally via FixedFloat) or fail gracefully. We accept any USDC ERC-20 transfer to the recipient address returned in the 402 — there is no EIP-3009 signing requirement. We will add a true Coinbase x402 facilitator the first time a real client demands it.
How do I test without spending real crypto?
Add ?dry_run=1 to any /api/v1/* URL (or header X-Dry-Run: 1, or body field dry_run: true). You will get a synthetic order_id starting with "DRY-", a fake payment address, fake credentials (RFC 5737 IPs), and the order auto-progresses pending → confirmed → active over ~60 seconds. No FixedFloat call, no real DB row in payments, no real server provisioned. The MCP tools accept the same dry_run argument.