x402-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| EVM_RPC_URL | No | EVM RPC endpoint used to check balances and broadcast transactions. Required for EVM payments. | |
| X402_BASE_URL | No | Base URL of the x402 payment backend used for catalog, quote, and fulfillment requests. | https://x402.privadovpn.com |
| SOLANA_RPC_URL | No | Solana RPC endpoint used to check balances and broadcast transactions. | https://api.mainnet-beta.solana.com |
| EVM_PRIVATE_KEY | No | Hex-encoded EVM private key used to sign EIP-3009 USDC authorizations. At least one of SOLANA_PRIVATE_KEY or EVM_PRIVATE_KEY is required. | |
| PREFERRED_NETWORK | No | Which network to prefer when a quote offers both. Accepts 'solana' or 'evm' ('eip155' is an accepted alias for 'evm'). Default is 'solana' if SOLANA_PRIVATE_KEY is set, else 'evm'. | |
| SOLANA_PRIVATE_KEY | No | Base58-encoded Solana secret key (32 or 64 bytes) used to sign and pay in SPL USDC. At least one of SOLANA_PRIVATE_KEY or EVM_PRIVATE_KEY is required. |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| wallet_statusA | Show which wallets are configured (addresses only, never private keys). |
| list_vpn_catalogA | List purchasable VPN plans (id, USD price, duration) and supported server country codes from X402_BASE_URL discovery. |
| sign_and_payA | DEBUG ONLY. Broadcasts on-chain payment and returns payment_signature + settlement_tx but does NOT fetch VPN credentials. Prefer buy_vpn. If you use this, you MUST next call fulfill_payment with the same invoice_no — never curl /pay and never call buy_vpn again (double charge). |
| buy_vpnA | PREFERRED. Buy VPN in one call: quote → pay on-chain → fulfill → save credentials. Call ONCE per purchase. Do not use curl/shell against /pay. Do not call dry_run then buy again (each quote creates a new invoice). If this errors after payment, call fulfill_payment with the recovery fields from the error — never retry buy_vpn. |
| fulfill_paymentA | Recovery only: exchange an already-broadcast payment for VPN credentials. Requires plan, invoice_no, payment_signature, settlement_tx from a prior buy_vpn/sign_and_pay. Does not create a new invoice or send money. Use when fulfill failed after payment — never call buy_vpn again. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 5 tools
Three of the five tools (sign_and_pay, buy_vpn, fulfill_payment) operate in the same payment territory and could plausibly be misselected. The descriptions work hard to draw boundaries (DEBUG ONLY, PREFERRED, recovery only), so overlap exists but is mitigated by explicit guidance.
All names use snake_case, and most follow a verb_noun pattern (list_vpn_catalog, buy_vpn, fulfill_payment). Minor deviations like wallet_status (noun-based) and sign_and_pay (verb_and_verb) keep it from being perfectly uniform.
Five tools is well-scoped for a VPN purchase flow: discovery, wallet check, purchase, and recovery. Each tool earns its place with no filler.
The surface covers catalog discovery, wallet status, purchasing, and payment recovery, giving a full purchase lifecycle. Minor gaps remain (e.g., no way to list saved credentials or view past purchases), but core workflows are covered.