−25%

on annual Windows plans, until 31 Oct. See plans

EQVPS
Get started

Connect the EQVPS MCP server to Claude Code and Codex CLI

Two terminal coding agents, two commands. How to add the EQVPS MCP server to Claude Code and to Codex CLI with a bearer token, check that it actually connected, keep the token out of git, and what to ask the agent first.

Coding agents that live in a terminal are good at running commands. What they usually don't have is a server of their own to run them on. Connecting the EQVPS MCP server fixes that: the agent gets tools to look up plans, order a VPS, read its SSH details, reboot it, start a sandbox, and about forty more.

This guide covers Claude Code and Codex CLI. For Claude Desktop, Cursor and Cline see Connect EQVPS to your MCP client. We ran every command below on Claude Code 2.1 and Codex CLI 0.164 before publishing.

The server address is the same everywhere:

https://mcp.eqvps.com/mcp

It speaks Streamable HTTP and takes a bearer token in the Authorization header. There's no OAuth sign-in flow yet, so you add the token by hand.

1. Get a token

If you already have an EQVPS account, create one in the dashboard: Settings → API tokens. Otherwise one request makes an account and returns its token:

curl -s -X POST https://api.eqvps.com/api/v1/eqvps/auth/register \
  -H "Content-Type: application/json" \
  -d '{"first_name":"Ada","last_name":"Lovelace","email":"you@example.com"}'

The token field is long, about a thousand characters. Don't retype it. Put it in a file the agent can't wander into and load it from there:

umask 077; printf '%s' 'PASTE-TOKEN' > ~/.eqvps_token
export EQVPS_TOKEN=$(cat ~/.eqvps_token)

You can also let the agent sign up on its own: connect without a token, ask it to call register_account, then add the server again with the token it got back.

2. Claude Code

claude mcp add --transport http eqvps https://mcp.eqvps.com/mcp \
  --header "Authorization: Bearer $EQVPS_TOKEN"

By default the server is added for the current project only. To have it in every project, add -s user. Check that Claude Code can reach it:

claude mcp list
eqvps: https://mcp.eqvps.com/mcp (HTTP) - ✔ Connected

Don't read too much into that green tick. Plans, prices and sign-up work without an account, so the server accepts the connection even with a mistyped token. The token is only checked when the agent touches your account. The quick test is to ask Claude Code "call the eqvps whoami tool": a good token returns your email, a bad one returns a 401 error.

claude mcp get eqvps shows the details. The token is printed there too, so don't paste that output into a chat or a ticket.

One thing to avoid: -s project writes the server into .mcp.json inside your repository. With a literal token in the header that file ends up in git. Use the local or user scope for anything that carries a credential.

3. Codex CLI

Codex can read the token from an environment variable, which keeps it out of the config file altogether:

codex mcp add eqvps --url https://mcp.eqvps.com/mcp --bearer-token-env-var EQVPS_TOKEN
codex mcp list
Name   Url                        Bearer Token Env Var  Status   Auth
eqvps  https://mcp.eqvps.com/mcp  EQVPS_TOKEN           enabled  Bearer token

That writes three lines to ~/.codex/config.toml:

[mcp_servers.eqvps]
url = "https://mcp.eqvps.com/mcp"
bearer_token_env_var = "EQVPS_TOKEN"

The catch: codex mcp list only shows the saved config, it doesn't connect. The connection happens when a session starts, and only if EQVPS_TOKEN is set in that shell. If it isn't, Codex quietly skips the server and the agent simply has no EQVPS tools. Add the export line to your shell profile, or start Codex as EQVPS_TOKEN=$(cat ~/.eqvps_token) codex.

4. First things to ask

Start with something read-only so you can see the tools work:

Call the eqvps whoami tool and tell me which account I'm signed in as.

List the EQVPS plans with a dedicated IPv4 and their monthly prices.

Show my EQVPS balance and my servers.

Then something real:

Order the cheapest EQVPS plan with Ubuntu 24.04, use my key from ~/.ssh/id_ed25519.pub, wait until it's active and give me the SSH command.

If the balance covers the plan, the order is paid on the spot and the server is usually ready in about a minute. If it doesn't, the agent gets an unpaid invoice and a topup_balance link for you to pay in USDT, USDC or ETH on Base, Ethereum or Polygon. After the top-up, ask it to place the same order again (it picks up the unpaid order and pays it from the balance rather than creating a second one), or to call pay_invoice, which pays that invoice from the balance.

The agent will also ask before anything destructive. Reinstalling or deleting a server requires typing its hostname as confirmation, and our tool descriptions tell agents to check with you first.

When it doesn't connect

SymptomLikely cause
✘ Failed to connect in claude mcp listThe address is wrong or the machine has no outbound HTTPS. The token isn't the cause: a bad token still connects.
whoami or get_balance returns 401Token wrong, truncated, revoked or expired. Paste it again from the file, not by hand.
Codex has no EQVPS toolsEQVPS_TOKEN not set in the shell that started codex
Tools answer 401 after a whileThe token expired (a year by default) or was refreshed elsewhere. Run refresh_token and update the header or the variable.
An order comes back with an unpaid invoiceThe balance didn't cover it. Top up, then repeat the same order or call pay_invoice with that invoice.

Next: what an agent can do with the server once it exists — How an agent runs its own VPS over MCP. Or, if it only needs to run code for a minute, a sandbox is cheaper than a VPS. The full tool list is in the MCP docs.

FAQ

Is there a one-click Connect button?

Not yet. Both CLIs connect to our server with a bearer token you add yourself — one command, shown below. One-click sign-in for hosted chat apps needs OAuth, which we haven't shipped.

Do I need an account first?

You need a token. You can get one without the dashboard: connect once without a token and ask the agent to call register_account, or send one curl request to /auth/register. Then add the server again with the token.

Where does Claude Code keep the token?

In ~/.claude.json, for the scope you chose. With the default local scope it applies to the current project only; with -s user it applies everywhere. Avoid -s project with a literal token — that writes .mcp.json into the repository.

Codex lists the server but the agent has no EQVPS tools. Why?

Codex reads the token from the environment variable you named when it starts. If that variable isn't set in the shell that launched codex, it doesn't connect to the server at all. Export it and start codex again.

Can the agent spend my money?

It can order servers and renew them from your prepaid balance, and it can create sandboxes. Keep the balance at what you're willing to spend, and set a sandbox spending cap. Paying a crypto invoice still needs a human with a wallet.

Comments

No comments yet. Be the first.

Leave a comment

Comments are moderated before they appear.