@easynodexyz/mcp-x402
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@@easynodexyz/mcp-x402 List available VPS products"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
@easynodexyz/mcp-x402
MCP server for AI agents to purchase VPS and blockchain node products via Easy Node's x402 API with USDC on Base.
Overview
This package provides a Model Context Protocol (MCP) server that enables AI assistants to:
List available VPS and blockchain node products
Purchase products using USDC on Base network
Check order status
Manage running instances (list, view details, renew, rename)
The x402 payment flow is handled automatically - the agent simply calls the tools and payments are processed seamlessly.
Related MCP server: Nexus MCP
Quick Start
1. Install & Setup
npx @easynodexyz/mcp-x402 setupThis interactive wizard will:
Prompt for your wallet private key
Save configuration to
~/.easy-node/.envOutput the IDE config to copy
2. Configure Your IDE
Choose your IDE and add the MCP server configuration.
Install as Claude Code Plugin
/plugin add easynodexyz/mcp-x402Documentation
Full documentation available at x402.easy-node.xyz.
IDE Configurations
Claude Desktop
Add to your claude_desktop_config.json:
{
"mcpServers": {
"easynode-x402": {
"command": "npx",
"args": ["@easynodexyz/mcp-x402"]
}
}
}Config file locations:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
Claude Code (CLI)
Add MCP server using the /mcp command:
claude /mcp add @easynodexyz/mcp-x402 -- npx @easynodexyz/mcp-x402Or manually add to your Claude Code settings (~/.claude/settings.json):
{
"mcpServers": {
"easynode-x402": {
"command": "npx",
"args": ["@easynodexyz/mcp-x402"]
}
}
}Config file locations:
macOS/Linux:
~/.claude/settings.jsonWindows:
%USERPROFILE%\.claude\settings.json
Cursor
Add to your Cursor settings (.cursor/mcp.json in your project or global config):
{
"mcpServers": {
"easynode-x402": {
"command": "npx",
"args": ["@easynodexyz/mcp-x402"]
}
}
}Config file locations:
Project:
.cursor/mcp.jsonin project rootGlobal macOS:
~/.cursor/mcp.jsonGlobal Windows:
%USERPROFILE%\.cursor\mcp.json
VS Code + Continue
Add to your Continue configuration (~/.continue/config.json):
{
"experimental": {
"modelContextProtocolServers": [
{
"transport": {
"type": "stdio",
"command": "npx",
"args": ["@easynodexyz/mcp-x402"]
}
}
]
}
}Other MCP-Compatible Tools
For any MCP-compatible tool, use this stdio transport configuration:
Field | Value |
Command |
|
Args |
|
Transport |
|
With environment variables:
{
"command": "npx",
"args": ["@easynodexyz/mcp-x402"],
"env": {
"EASYNODE_PRIVATE_KEY": "0x...",
"EASYNODE_API_URL": "..."
}
}3. Restart Your IDE
Restart to load the MCP server.
4. Use It
Ask your AI assistant:
"List available VPS products"
"Purchase 1 month of the VPS-XS product"
"Check the status of order abc123"
"List my instances"
"Get connection details for instance xyz"
"Renew instance xyz for 3 months"
Configuration
Environment Variables
Variable | Required | Default | Description |
| Yes | - | Wallet private key (0x...) |
| No | API base URL | |
| No | 100 | Max USDC per transaction |
Config Resolution Order
Configuration is loaded from multiple sources (later overrides earlier):
~/.easy-node/.env- Global config./.env- Project-level configEnvironment variables - Highest priority
Alternative: Manual Configuration
Instead of running setup, you can configure manually:
Option A: Pass env vars in MCP config
{
"mcpServers": {
"easynode-x402": {
"command": "npx",
"args": ["@easynodexyz/mcp-x402"],
"env": {
"EASYNODE_PRIVATE_KEY": "0x..."
}
}
}
}Option B: Create config file manually
Create ~/.easy-node/.env:
EASYNODE_PRIVATE_KEY=0x...
EASYNODE_API_URL=https://api.easy-node.xyz/api
EASYNODE_MAX_PAYMENT=1000MCP Tools
list_products
List available VPS and blockchain node products with USDC pricing.
Parameters:
category(optional): Filter by"vps"or"node"
Example:
List all VPS products available for purchasecreate_order
Purchase a product using USDC on Base. Handles x402 payment automatically.
Parameters:
productId(required): Product ID to purchaseperiod(required): Subscription period in monthsquantity(optional): Number of instances (default: 1)customName(optional): Custom name for the instance (max 100 characters)
Example:
Purchase 3 months of product abc123get_order
Check the status of an existing order.
Parameters:
orderId(required): Order ID to look up
Example:
Check status of order xyz789list_instances
List all instances owned by the wallet.
Example:
List all my instancesget_instance
Get detailed instance information including connection details.
Parameters:
instanceId(required): Instance ID to look uptype(required): Instance type ("node"or"vps")
Example:
Get connection details for VPS instance abc123renew_instance
Renew an existing instance subscription.
Parameters:
instanceId(required): Instance ID to renewperiod(required): Renewal period in monthstype(required): Instance type ("node"or"vps")
Example:
Renew my VPS instance abc123 for 3 monthsupdate_custom_name
Set or update the custom name of an instance.
Parameters:
instanceId(required): Instance ID to updatetype(required): Instance type ("node"or"vps")customName(required): Custom name (max 100 characters)
Example:
Rename instance abc123 to "my-validator"Security
Private keys are stored with 600 permissions (owner read/write only)
Max payment limit prevents accidental large transactions
Wallet only signs EIP-3009 TransferWithAuthorization for USDC
How x402 Works
Agent calls
create_orderwith product detailsFirst request returns HTTP 402 with payment requirements
Client signs USDC transfer authorization (EIP-3009)
Retry with payment signature
Server verifies, settles on-chain, creates order
Order returned to agent
Troubleshooting
"EASYNODE_PRIVATE_KEY is required"
Run npx @easynodexyz/mcp-x402 setup or set the environment variable.
"Payment amount exceeds maximum"
Increase EASYNODE_MAX_PAYMENT in your config or env vars.
"402 response missing payment-required header"
The API endpoint may not support x402. Check you're using the correct API URL.
MCP server not appearing in IDE
Verify the config file location is correct for your OS
Check JSON syntax is valid
Restart the IDE completely (not just reload)
Check IDE logs for MCP connection errors
Contributing
Found a bug or have a feature request? Please open an issue at github.com/easynodexyz/mcp-x402/issues.
Links
License
BUSL-1.1
Available Tools
7 toolscreate_orderA
Purchase a VPS or blockchain node product using USDC on Base. Handles the x402 payment flow automatically. Returns order details with ID and status.
Inputs: period (required), productId (required), quantity, customName.
get_instanceA
Get detailed information about a specific instance including connection details (IP address, SSH port, admin credentials). Secrets are encrypted and decrypted locally.
Inputs: type (required), instanceId (required).
get_orderA
Get the status and details of an existing order by ID. Returns order status, products, and payment information.
Inputs: orderId (required).
list_instancesA
List all VPS and Node instances owned by the wallet. Returns instance IDs, types, statuses, and subscription dates.
Inputs: no named parameters.
list_productsA
List available VPS and blockchain node products with USDC pricing. Returns product IDs, names, pricing, and availability.
Inputs: category.
renew_instanceA
Renew an existing VPS or Node instance subscription using USDC on Base. Extends the subscription period. Handles x402 payment flow automatically.
Inputs: type (required), period (required), instanceId (required).
update_custom_nameA
Set or update the custom name of a VPS or Node instance. Useful for labeling instances with friendly names.
Inputs: type (required), customName (required), instanceId (required).
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
TDQS
Scored across 7 tools
Each tool targets a distinct resource and action: products vs orders vs instances, with clear separation between listing, getting, creating, renewing, and updating. No two tools could be confused.
All tools follow the same verb_noun pattern with snake_case (list_products, create_order, get_instance, etc.). Naming is perfectly consistent and predictable.
Seven tools is well-scoped for a VPS/node purchasing and management server. Each tool covers a distinct operation without bloat or triviality.
The core lifecycle is covered: product discovery, order creation/status, instance listing/detail/renewal, and naming. Missing cancel/termination operations are a minor gap, but agents can work around by not needing them or relying on external cancellation.
Maintenance
Related MCP Connectors
15 paid AI agent primitives via x402 (USDC on Base). Pay-per-call MCP server.
Monetize any MCP server: x402 paywall, pay-per-call billing in USDC on Base, agent marketplace.
Agent-commerce MCP server for x402/USDC payments and affiliate splits on Base.
x402 pay-per-call APIs over MCP, settled in USDC on Base for autonomous agents and developers.
Related MCP Servers
AlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI agents to search, pay for, and call paid APIs using the x402 protocol, with automatic USDC settlement.2MIT- AlicenseNot gradedqualityDmaintenanceMCP server with X402 payment integration, enabling AI agents to access paid tools like weather, web search, and image generation with crypto payments via MetaMask on Base network.MIT
- AlicenseAqualityBmaintenanceNo-KYC crypto VPS hosting with an MCP server that lets AI agents provision VPS programmatically. Pay with USDC/USDT on Base and Ethereum, no accounts or verification required.21MIT
- AlicenseNot gradedqualityCmaintenanceMCP server providing 50+ crypto, market intelligence, and AI inference endpoints with x402 pay-per-request micropayments on Base.2Apache 2.0