wax-mcp-full
wax-mcp-full
v0.1.0 — a local-first MCP server for the WAX blockchain.
It lets an AI host (Claude Desktop, Cursor, Grok Build, …) query accounts, chain state, AtomicAssets / AtomicMarket, Hyperion history, and WAXP prices, and prepare unsigned transactions for a wallet to sign. No API keys. Mainnet and testnet.
This is an early public release. It is more complete than the archived yksanjo/wax-mcp-server (8 tools, single RPC, dead v1 history). It is not a 1.0.
Features
Area | What you get |
Account | WAXP + token balances, CPU/NET/RAM, permissions, account info |
Chain |
|
History | Hyperion |
AtomicAssets | assets, templates, schemas, collections, mints, transfers |
AtomicMarket | sales, auctions, buy offers, stats, price history, recent sales, top collections |
Market | WAXP price + market data (CoinGecko → CoinPaprika) |
Health | multi-endpoint status |
Safe writes | unsigned transfer / stake / unstake / vote / Atomic transfer+burn + simulate |
Signing | off by default — use a wallet |
Also registers resources (wax://account/{name}, …) and prompts (inspect-account, market-overview, …).
Requirements
Node.js 20+
HTTPS access to public WAX guild APIs (no keys)
Install
git clone https://github.com/eoinjosephcurran-code/wax-mcp-full.git
cd wax-mcp-full
npm install
npm run build
node dist/index.js --helpDev (no build):
npx tsx src/index.ts --network mainnetAdd it to a host
Replace /ABSOLUTE/PATH/TO/wax-mcp-full with the folder you cloned.
Claude Desktop
claude_desktop_config.json:
{
"mcpServers": {
"wax": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/wax-mcp-full/dist/index.js"],
"env": { "WAX_NETWORK": "mainnet" }
}
}
}Restart Claude Desktop.
Cursor
.cursor/mcp.json:
{
"mcpServers": {
"wax": {
"command": "node",
"args": ["/ABSOLUTE/PATH/TO/wax-mcp-full/dist/index.js"]
}
}
}Grok Build
~/.grok/config.toml:
[mcp_servers.wax]
command = "node"
args = ["/ABSOLUTE/PATH/TO/wax-mcp-full/dist/index.js"]
startup_timeout_sec = 30Or: grok mcp add wax -- node /ABSOLUTE/PATH/TO/wax-mcp-full/dist/index.js
Copy-paste templates live in examples/.
Configuration
Variable | Meaning |
|
|
| Comma-separated HTTPS RPC URLs |
| AtomicAssets / AtomicMarket hosts |
| Hyperion history hosts |
| Light API hosts |
| CoinGecko / CoinPaprika bases |
| Per-request timeout (default 12000, 1000–30000) |
| Retries per URL on transient errors (default 2) |
| Unsigned tx expiration (default 180) |
| Must be |
| File of WIFs (one per line) — prefer this over env |
CLI: --network mainnet\|testnet.
Only https URLs are accepted. Tools never take an RPC URL argument.
eosjs is not installed by default. Prefer a wallet. Local wax_sign_broadcast requires npm install eosjs plus WAX_ENABLE_SIGNING=1.
Safety
Prepare tools return unsigned JSON. Sign in Anchor, WAX Cloud Wallet, or
cleos.wax_simulate_transactionnever broadcasts. Public RPCs often cannot dry-run unsigned JSON; thensimulatedisfalse.Never put a private key in chat or in a tool argument.
Example prompts
“What is the WAXP price and 24h volume?”
“Show CPU/NET/RAM and tokens for
eosio.”“List recent AtomicMarket sales for
alien.worlds.”“Prepare an unsigned transfer of
1.00000000 WAXfromalicetobob— do not sign it.”
More in examples/example-prompts.md.
Tests
npm test # unit + MCP smoke + live probes (skip-soft if offline)
npm run test:live # live probes; fail if public APIs are down
npm run typecheckKnown limits (v0.1)
Public Atomic / Hyperion nodes can be slow or rate-limit.
Simulate is best-effort; many RPCs refuse unsigned JSON.
MCP resources have no
isErrorflag — failures are JSON inside a successful read.wax_get_blockreturns headers +transaction_count, not full transactions.Optional local signing is a footgun. Leave it off.
License
MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/eoinjosephcurran-code/wax-mcp-full'
If you have feedback or need assistance with the MCP directory API, please join our Discord server