No-KYC crypto VPS AI agents rent & run over MCP — 57 tools, pay USDC/USDT on Base/Eth/Polygon/Solana
io.github.Poiuyhje/eqvps MCP Server
A Crypto-paid, no-KYC VPS server that AI agents rent and operate over the Model Context Protocol (MCP). Users order, pay with USDC/USDT, and receive root access to a VPS for model-context-based interactions and agent deployment.
List all available VPS plans (catalog) with pricing, specs and the OS images each plan can boot. No authentication needed. Use this first to pick a `product` slug and an `os_id` for `order_vps`.
Create a new EQVPS customer account with first_name, last_name, email. Returns a bearer `token` — STORE IT SAFELY: it is your only credential. Send it as `Authorization: Bearer <token>` on every following request. No password or human step is needed. If you may lose the token, call `set_password` once (while authenticated) to also enable email+password `login` as a backup.
Log in with email + password. Returns a bearer `token`. NOTE: accounts created via register_account have NO password by default — reuse the token from register instead. If you have no password, first call `set_password` (while still authenticated with your register token), or use the human email-OTP flow in a browser.
Set a password for THIS account (the one your bearer token belongs to). Accounts from register_account have no password by default — the bearer token is the credential. Call this ONCE to enable email+password `login` as a recovery method in case the token is lost. Needs only the new password (min 8 chars, letters+numbers) — no current password the first time. If a password was already set, this returns 409 (use change-password instead).
Create a top-up invoice and return a `checkout_url` (PayRam crypto checkout). The balance is credited automatically once the on-chain payment confirms. `amount` is in account currency (USD); minimum and maximum are enforced server-side. Only one unpaid top-up may exist at a time.
Order a VPS. `product` = plan slug from list_plans; `os_id` = an OS id from that plan's images. Optional `hostname` and `ssh_key` (public key — strongly recommended so you get key-based root login).
Branching on the response:
• `paid_from_balance: true` → the prepaid balance covered it; the server is provisioning. Poll `get_vps_status` until status is `active` and the VM is reachable.
• `paid_from_balance: false` → balance was insufficient; an unpaid `invoice` is returned. Call `pay_invoice` with `invoice.id` to get a crypto `checkout_url`, OR `topup_balance` then re-order.
Initiate payment for an owned, unpaid invoice. Returns a PayRam `checkout_url`; the invoice settles (and the VPS provisions) automatically once the on-chain payment confirms.
List the account's ACTIVE VPS services — active, provisioning, and suspended servers (deleted/cancelled are excluded). Use the `id` as `service_id` for the management tools. If a server is missing from this list it has been deleted — do not query its status or try to manage it.
Get full detail for one VPS: status, specs, live VM state/uptime, and SSH access info (host, port, ready-to-paste `command`). ROOT PASSWORD (keyless VPS): call with `reveal: true` to retrieve it. It is shown ONCE, and only after the VM has finished booting — at that moment the password is applied to the live VM, so it is guaranteed to work. While the VM is still booting the response carries `password_pending: true` and NO password; just call again with `reveal: true` in ~30-60s (the one-time reveal is NOT spent until a password is actually returned — no reset or reboot needed). Without `reveal`, `password_available: true` means a password is waiting to be revealed. If you supplied an SSH key at order time, log in with that key (no password); `ssh_ready: false` means the VM is still booting — retry shortly. Use `reset_password` ONLY if the password is lost. Poll this (without `reveal`) after `order_vps` to watch provisioning reach `active`. NAT plans (no dedicated IP): the SSH `port` shown is an EXTERNAL DNAT port forwarded to the VM internal port 22 (`internal_port` in the response). If you configure a host firewall, allow the INTERNAL port — `ufw allow OpenSSH` — NOT the external port, or `ufw enable` will lock SSH out. See `firewall_note` in the response.
Rotate the root password. The new password is applied to the LIVE VM immediately via the guest-agent (no reboot) and works within ~10-30s; the OLD password stops working. REQUIRES confirm = exact hostname (from get_vps_status) or 'DELETE'. Agent must confirm with the human before calling. Use this ONLY if the password was lost — NOT because SSH was not instant on a fresh order (a new VM needs ~60s to boot; poll get_vps_status with reveal:true instead). New password is NOT in this response — read it ONCE via get_vps_status (reveal:true); also emailed.
DESTRUCTIVE — all data is lost. REQUIRES confirm = exact hostname (from get_vps_status) or 'DELETE'. Agent must explicitly confirm with the human before calling. Wipes and reinstalls the VPS with the given OS image (`os_id` from list_plans). Provisioning runs asynchronously; poll `get_vps_status`.
Cancel a VPS. DEFAULT `end_of_period`: the server stays active until the end of the already-paid period, then is simply not renewed — NO data loss now, safe. `immediate` DESTROYS the VM and ALL data right away, permanently and irreversibly, and REQUIRES `confirm` set to the exact server hostname (see get_vps_status). Use end_of_period unless you explicitly intend to wipe the server now. On `immediate`, the unused portion of the already-paid period is refunded to your account balance (see `refund_amount` in the response).
Parameters4
service_id
integer
required
type
string
optional
confirm
string
optional
reason
string
required
REQUIRED: why this VPS is being cancelled (e.g. project finished, too expensive, no longer needed).
Grant OPERATOR access to one of YOUR VPS to another person by email (they can power/reinstall/console/hostname/rdns, but NOT renew, cancel or change billing). Sends them an invitation with an accept link. Optional `expires_days` for time-limited access. Owner-only.
Accept a delegation invitation using the `token` from the invite link. Creates/links your account and grants operator access. Returns a bearer token for the delegated account.
Revoke a delegation by its id (owner revokes access, or a delegate declines their own). The other side is notified. Use list_delegations / list_delegated_to_me to find the id.
Open a support ticket with EQVPS. `subject` and `message` are required; optional `service_id` ties it to one of your VPS. The response includes the ticket `code` — use that with get_ticket / reply_ticket / close_ticket.
Read one ticket and its full message thread. Each message has an `author`: `you` or `staff` — a `staff` message is a reply from support. Poll this to see new answers. The ticket code comes from create_ticket / list_tickets.
Close one of your tickets. `rating` (1-5) and `comment` are OPTIONAL — you can close without rating. Use the ticket code from create_ticket / list_tickets.
API-native, pay-per-use, no-KYC VPS hosting that AI agents can rent and run by themselves. EQVPS exposes a Model Context Protocol server so an autonomous agent can discover plans, create an account, pay with crypto, order a VPS, and fully operate it — no human in the loop, agents provision programmatically.
⭐ If this is useful, please star the repo — it helps other agents & devs discover it.
This is a hosted, commercial remote MCP server. Most tools require a Bearer token tied to a customer account with a prepaid crypto balance. Provisioning a VPS spends prepaid balance funded with topup_balance. Catalog tools (list_plans) are public.
What this server does
An AI agent can complete the entire VPS lifecycle on its own — no dashboard, no card, no identity check:
Discover — list_plans (public) returns plans, specs, prices, OS images (14 Linux images).
Sign up — register_account gives the agent a Bearer token instantly (no email, no OTP, no human step).
Fund — topup_balance returns a crypto checkout URL; pay in USDC/USDT/PYUSD to load a prepaid balance.
Provision — order_vps creates a VPS from the balance; get_vps_status returns live state and SSH access (root in ~60s).
Operate — power, hostname, root-password, reinstall, metrics, tickets, delegation, cancel — all over MCP.
Plans range from $3/mo (Nano, NAT) to $90/mo (Pro-80: 80 GB RAM, dedicated IPv4). EU nodes (Germany, Finland).
Authentication (two paths — do not mix)
AI agents (this MCP): call register_account — the agent supplies its own credentials and receives a Bearer token immediately. No email, no OTP, no human step. Send it as Authorization: Bearer <token>.
Humans (website only): passwordless email OTP — for people in a browser. Agents cannot use this (they cannot read email).
An MCP agent must use register_account, never the email-OTP human flow. If a model suggests "wait for a code from your email", that is wrong for agents — the agent already holds its token from register_account.
Quickstart
Claude Code — one command:
code
claude mcp add --transport http eqvps https://mcp.eqvps.com/mcp
Register an EQVPS account, show me plans, create a crypto top-up invoice for $20; once I confirm payment, order an Ubuntu 24.04 VPS and give me its SSH access.
The agent does everything via tools except funding: a human sends crypto to the top-up invoice once. After the balance is funded, repeat orders are fully hands-off.
Tools (57)
One endpoint, role-filtered by token: a customer Bearer token exposes the 27 customer tools; a reseller token (rk_…, issued in the EQVPS Partners cabinet) exposes the 30 white-label reseller tools.
Customer tools (27)
Tool
Auth
Description
list_plans
public
List available VPS plans with pricing, specs and OS images.
register_account
public
Create an EQVPS account (programmatic signup, no human in the loop). Returns a Bearer token.
login
public
Log in with email + password; returns a Bearer token.
whoami
bearer
Return the authenticated account profile.
get_balance
bearer
Return prepaid credit balance and currency.
topup_balance
bearer
Create a crypto top-up invoice; returns a checkout URL.
order_vps
bearer
Order a VPS by plan slug + OS id (pays from prepaid balance).
pay_invoice
bearer
Pay an owned unpaid invoice; returns a crypto checkout URL.
list_vps
bearer
List the account's VPS services (id, status, plan).
get_vps_status
bearer
Full detail for one VPS: status, specs, live VM state/uptime, SSH access.
power_vps
bearer
Power-control a VPS: start, stop or reboot.
set_hostname
bearer
Set the VPS hostname (DNS label; applied on reboot/rebuild).
reset_password
bearer
Reset the VPS root password (rotates to a new one).
set_password
bearer
Set a specific root password of your choice on the VPS.
reinstall_vps
bearer
Destructive: wipe and reinstall the VPS with a given OS image.
cancel_service
bearer
Cancel a VPS: end_of_period (safe default) or immediate (destroys VM + data, requires confirm=hostname).
get_vps_metrics
bearer
Time-series resource metrics (CPU, memory, network, disk) for a VPS.
delegate_service
bearer
Grant OPERATOR access to one of your VPS to another person by email (power/reinstall/console/hostname/rDNS, not billing). Owner-only.
accept_delegation
public
Accept a delegation invite using the token from the invite link. Returns a Bearer token.
list_delegations
bearer
List outgoing delegations you granted.
list_delegated_to_me
bearer
List services other owners delegated to you.
revoke_delegation
bearer
Revoke a delegation by id.
create_ticket
bearer
Open a support ticket.
list_tickets
bearer
List your support tickets and their status.
get_ticket
bearer
Read a ticket with its full message thread.
reply_ticket
bearer
Post a reply on one of your tickets.
close_ticket
bearer
Close a resolved ticket (optional rating).
Reseller tools (30) — white-label
For partners building their own VPS brand on top of EQVPS (own plans, own end-clients, own pricing). Requires a reseller token (rk_…) from the EQVPS Partners cabinet. An agent can run a hosting business autonomously:
This repository documents the hosted EQVPS MCP server (mcp.eqvps.com) and ships a
minimal example client — you do not run a server yourself. To try the connection
and list plans:
bash
npm install
node examples/connect.mjs # connects to mcp.eqvps.com, prints tools + list_plans
Point EQVPS_MCP_URL at a different endpoint if needed. The example uses only the public
list_plans tool; authenticated tools need a Bearer token from register_account.
About
EQVPS is API-native, pay-per-use VPS hosting for humans and AI agents — with one of the most comprehensive MCP surfaces of any VPS provider (57 tools). NVMe storage, full root, instant deploy (~60s), 14 Linux images, EU nodes (Germany, Finland). Crypto payment — USDC, USDT, PYUSD (plus native ETH, POL, SOL, CBBTC) on Base, Ethereum, Polygon and Solana — no KYC, no card required. Registered in the Official MCP Registry as io.github.Poiuyhje/eqvps.