Nodeflare Mcp
π βοΈ - Pay-per-request JSON-RPC on 23 EVM chains (Ethereum, Base, Arbitrum, plus young chains Robinhood Chain, Plasma, Ink, Zircuit) from independent bare-metal nodes. Free reads with no key; heavy methods (ethgetLogs, trace, debug) via a free API key or x402 USDC pay-per-call on Base/Polygon/Arbitrum. In the official MCP Registry. npx -y nodeflare-mcp
Quick Install
{
"mcpServers": {
"nodeflare-app-nodeflare-mcp": {
"command": "npx",
"args": [
"-y",
"nodeflare-app-nodeflare-mcp"
]
}
}
}Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.
Documentation Overview
NodeFlare MCP Server
Blockchain JSON-RPC for AI agents on 23 EVM chains β Ethereum, Base, BNB Chain, Arbitrum, Optimism, Avalanche, HyperEVM, Polygon, and young chains like Robinhood Chain, Plasma, Ink, Zircuit, BOB and Soneium. Served from NodeFlare's own bare-metal nodes across 5 regions.
Quick start
{
"mcpServers": {
"nodeflare": {
"command": "npx",
"args": ["-y", "nodeflare-mcp"]
}
}
}
That's it β no API key required for standard reads (block numbers, balances, transactions, eth_call).
Every tool's chain argument accepts a slug (eth, base, arb), a name (ethereum, arbitrum, bsc), or a numeric chain ID (1, 8453) β so agents don't have to know NodeFlare's internal slugs.
Install as a Claude Code plugin
This repo doubles as a Claude Code plugin marketplace. Installing the plugin wires up the MCP server and a set of slash-command recipes in one step:
claude plugin marketplace add Nodeflare-app/nodeflare-mcp
claude plugin install nodeflare
Then use the recipes below (/nodeflare:balance, /nodeflare:token, β¦). To unlock heavy methods, export NODEFLARE_API_KEY in your shell before starting Claude Code (free key, 2M CU/month).
Recipes
Ready-made slash commands bundled with the plugin:
| Recipe | What it does |
|---|---|
/nodeflare:chains [filter] | List supported chains, IDs and endpoint URLs |
/nodeflare:balance <address> [chain] [tokenβ¦] | Native + ERC-20 balances, one chain or across the majors |
/nodeflare:token <token> [chain] [holder] | ERC-20 metadata (name/symbol/decimals/supply) + optional holder balance |
/nodeflare:tx <hash> [chain] | Fetch a transaction + receipt and explain what it did |
/nodeflare:logs <contract> [chain] [from] [to] | Fetch and summarise a contract's recent event logs |
/nodeflare:gas [chain | compare] | Current gas price on a chain, or a cheapest-first comparison |
Access tiers
The server picks its access tier from the environment:
| Env var | Tier |
|---|---|
| (none) | Free public endpoints β standard read methods, rate-limited per IP |
NODEFLARE_API_KEY | Free/paid key β heavy methods, 2,000,000 compute units/month free (get one) |
X402_PRIVATE_KEY | Pay per call with x402 β heavy methods (eth_getLogs, trace_*, debug_*) are paid from this wallet in USDC on Base, Polygon or Arbitrum, ~$0.001/call. No account needed; gas is covered by the facilitator. |
With an x402 wallet, a blocked heavy method is retried automatically as a paid call β the tool result includes "_x402": "settled via x402" when a payment settled on-chain.
{
"mcpServers": {
"nodeflare": {
"command": "npx",
"args": ["-y", "nodeflare-mcp"],
"env": { "X402_PRIVATE_KEY": "0xβ¦" }
}
}
}
Use a dedicated agent wallet holding a small USDC balance β never your main wallet.
Tools
| Tool | Description |
|---|---|
list_chains | The 23 supported chains with chain IDs and endpoints |
get_block_number | Latest block number (decimal + hex) |
get_balance | Native-token balance β raw wei + human-readable amount in the chain's currency |
get_transaction_receipt | Transaction receipt by hash |
eth_call | Read-only contract call |
get_logs | Contract event logs (heavy β key or x402 wallet) |
rpc_call | Any JSON-RPC method on any supported chain |
get_transaction | Transaction by hash (from, to, value, input) |
get_block | Block by number/tag, optional full transactions |
get_gas_price | Current gas price + EIP-1559 priority fee |
get_token_balance | ERC-20 balance, raw + human-readable |
get_token_metadata | ERC-20 name, symbol, decimals, total supply |
resolve_ens | ENS name β address (forward) or address β primary ENS name (reverse) |
get_token_price | Current USD price of an ERC-20 (DefiLlama, keyless) β price, symbol, confidence |
compare_gas | Gas price across chains in one call, cheapest first, so an agent picks where to transact |
get_multichain_balances | Native + ERC-20 balances for one address across many of the 23 chains in one call (incl. young chains); pay-per-call with an x402 wallet |
get_token_allowances | ERC-20 approvals a wallet has granted across chains, with revoked ones dropped and unlimited approvals flagged (heavy β key or x402) |
get_wallet_report | Full "know this wallet" report: balances + USD total + top holdings + active approvals, across chains (approvals half is heavy) |
check_token_safety | Risk-check an ERC-20 before trading: ownership, proxy detection, holder concentration, honeypot simulation β risk score (deep checks heavy) |
simulate_transaction | Tx pre-flight: will it revert, gas used, and which tokens/ETH move (asset-change tracing is heavy) |
onchain_answer | Onchain Answer Engine β plain-English question about a wallet/token β a cited verdict in one call (key or x402; no free tier) |
Address arguments (get_balance, get_token_balance, eth_call) also accept ENS names β pass vitalik.eth and it's resolved to an address automatically.
get_multichain_balances can also auto-discover the tokens an address holds (discover: true, x402 wallet required). Discovered tokens are USD-priced via DefiLlama and, on price-covered chains, filtered by value: pass minUsd (default 0.01) to set the worthless-token cutoff, includeSpam: true to keep unpriced tokens, or includeDust: true to keep sub-1e-9 balances.
Prompts (any MCP client)
The server also exposes the recipes as MCP prompts, so guided workflows show up in any MCP client (Cursor, Windsurf, β¦), not just the Claude Code plugin: chains, balance, token, tx, logs, gas.
Links
- NodeFlare β free API key, 2M CU/month
- x402 pay-per-request β pricing and how it works
- Docs Β· Status Β· Discord
MIT