Nodeflare-mcp
Nodeflare-mcp provides blockchain JSON-RPC access across 23 EVM chains for AI agents, with no API key required for standard reads.
Available Tools
list_chains— List all 23 supported chains with chain IDs and endpoint URLsget_block_number— Get the latest block number on any supported chainget_balance— Get the native token balance (in wei) of any addressget_transaction— Get transaction details (from, to, value, input)get_transaction_receipt— Get transaction receipt (status, logs, gas used)get_block— Get block by number/tag with optional full transactionseth_call— Execute read-only smart contract calls using ABI-encoded calldataget_logs— Fetch contract event logs — requires API key or x402 wallet (~$0.001/call)get_gas_price— Get current gas price plus EIP-1559 priority feeget_token_balance— Get ERC-20 balance in raw and human-readable formatsget_token_metadata— Get ERC-20 name, symbol, decimals, and total supplyrpc_call— Make any arbitrary JSON-RPC call on any supported chain (heavy methods liketrace_*,debug_*require API key or x402)
Access Tiers
Free (no key): Standard reads — block numbers, balances, transactions,
eth_callAPI Key (
NODEFLARE_API_KEY): Heavy methods + 3,000,000 compute units/month freex402 Wallet (
X402_PRIVATE_KEY): Pay-per-call (~$0.001 in USDC on Base, Polygon, or Arbitrum) for heavy methods with no account needed
Supported Chains (23 total): Ethereum, Base, BNB Chain, Arbitrum, Optimism, Avalanche, HyperEVM, Polygon, Unichain, Sonic, Linea, Mantle, Zircuit, Robinhood Chain, XLayer, Soneium, Nova, BOB, Ink, Cronos, Mode, Sei, and Plasma
Provides blockchain JSON-RPC access to BNB Chain via NodeFlare, enabling AI agents to query block data, balances, transactions, and perform contract calls.
Provides blockchain JSON-RPC access to Ethereum via NodeFlare, enabling AI agents to query block data, balances, transactions, and perform contract calls.
Provides blockchain JSON-RPC access to Optimism via NodeFlare, enabling AI agents to query block data, balances, transactions, and perform contract calls.
Provides blockchain JSON-RPC access to Polygon via NodeFlare, enabling AI agents to query block data, balances, transactions, and perform contract calls.
Provides blockchain JSON-RPC access to Robinhood Chain via NodeFlare, enabling AI agents to query block data, balances, transactions, and perform contract calls.
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.
Related MCP server: boo-x402-mcp
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 nodeflareThen 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 |
| List supported chains, IDs and endpoint URLs |
| Native + ERC-20 balances, one chain or across the majors |
| ERC-20 metadata (name/symbol/decimals/supply) + optional holder balance |
| Fetch a transaction + receipt and explain what it did |
| Fetch and summarise a contract's recent event logs |
| 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 |
| Free/paid key — heavy methods, 2,000,000 compute units/month free (get one) |
| Pay per call with x402 — heavy methods ( |
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 |
| The 23 supported chains with chain IDs and endpoints |
| Latest block number (decimal + hex) |
| Native-token balance — raw wei + human-readable amount in the chain's currency |
| Transaction receipt by hash |
| Read-only contract call |
| Contract event logs (heavy — key or x402 wallet) |
| Any JSON-RPC method on any supported chain |
| Transaction by hash (from, to, value, input) |
| Block by number/tag, optional full transactions |
| Current gas price + EIP-1559 priority fee |
| ERC-20 balance, raw + human-readable |
| ERC-20 name, symbol, decimals, total supply |
| ENS name → address (forward) or address → primary ENS name (reverse) |
| Current USD price of an ERC-20 (DefiLlama, keyless) — price, symbol, confidence |
| Gas price across chains in one call, cheapest first, so an agent picks where to transact |
| 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 |
| ERC-20 approvals a wallet has granted across chains, with revoked ones dropped and unlimited approvals flagged (heavy — key or x402) |
| Full "know this wallet" report: balances + USD total + top holdings + active approvals, across chains (approvals half is heavy) |
| Risk-check an ERC-20 before trading: ownership, proxy detection, holder concentration, honeypot simulation → risk score (deep checks heavy) |
| Tx pre-flight: will it revert, gas used, and which tokens/ETH move (asset-change tracing is heavy) |
| 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
MIT
Available Tools
12 toolseth_callA
Execute a read-only contract call (eth_call) and return the raw result.
| Name | Required | Description | Default |
|---|---|---|---|
| to | Yes | Contract address | |
| data | Yes | ABI-encoded calldata (0x…) | |
| from | No | Optional caller address | |
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden for behavioral disclosure. It explicitly states the tool is 'read-only' and returns 'raw result', which clearly conveys the non-mutating behavior and output format. It could add details about potential errors or block context but remains transparent enough for an agent familiar with Ethereum.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, well-structured sentence that conveys all essential information without redundancy. Every word serves a purpose, making it efficient for an AI agent to parse.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has 4 parameters, no output schema, and no annotations, the description adequately covers the core behavior (read-only, raw result). However, it does not specify the return format in detail or mention potential pitfalls like gas estimation, which could be useful for an agent. Still, for a standard RPC call, it is sufficiently complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% coverage with descriptions for all parameters (to, data, from, chain). The tool description adds value by clarifying the call is 'read-only' and returns 'raw result', which helps the agent understand the nature of the data parameter as 'ABI-encoded calldata' and the expected output. This goes beyond what the schema alone provides.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Execute' and the resource 'contract call', specifies it is 'read-only' (eth_call), and indicates the return type 'raw result'. This distinguishes it from sibling tools like get_balance or get_transaction_receipt, which have different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description identifies that this tool is for read-only contract calls, implying it should be used when no state mutation is required. However, it does not explicitly exclude other scenarios or provide alternatives, leaving some ambiguity compared to siblings like rpc_call.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_balanceA
Get the native-token balance of an address (in wei, hex).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| address | Yes | 0x-address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations provided, so description must convey behavior. It indicates return format (wei, hex) but lacks details on error handling (e.g., invalid chain or address) or any side effects. Adequate for a simple read operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence of 10 words. No redundant information. Every word serves a purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Complete for a simple balance check: states what it gets and in what format. Lacks explicit mention that it is for native tokens only (not ERC-20) and does not describe return value structure. Given lack of output schema, a bit more context would be helpful but not critical.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema already provides descriptions for both parameters (chain slug examples, 0x-address format) with 100% coverage. Description adds context that balance is native-token and in wei hex, but does not enhance parameter semantics beyond schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Description clearly states the verb 'Get' and the resource 'native-token balance of an address', specifying format (wei, hex). It distinguishes from sibling tools like eth_call and get_logs. No ambiguity.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like eth_call for token balances. Useful for native tokens only, but not stated. Implied usage is clear for the stated purpose.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_blockA
Get a block by number or tag (e.g. 'latest', 'finalized', or a hex number). Set fullTransactions to include full tx objects instead of hashes.
| Name | Required | Description | Default |
|---|---|---|---|
| block | No | Hex block number or tag ('latest', 'finalized', 'safe', 'earliest') | latest |
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| fullTransactions | No | Include full transaction objects |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It indicates it is a read operation by using 'Get', and mentions optional fullTransactions. However, it does not describe error handling (e.g., if block not found), rate limits, or authentication needs. Given no annotations, this is adequate but not comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences. The first states purpose and acceptable inputs; the second provides a key usage hint. No extraneous words or repetition. Well-structured for quick parsing.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having only 3 parameters and no output schema, the description does not explain what the tool returns (e.g., block details, structure). It only covers the fullTransactions option. For a block retrieval tool, agents need to know the response format to process results. This is a significant gap.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all parameters. The description adds value by clarifying the meaning of block (number or tag with examples) and fullTransactions (include full tx objects instead of hashes), which supplements the schema descriptions.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and resource 'block', specifying acceptable inputs (number or tag). It distinguishes from siblings like get_block_number (which gets the latest block number) and get_transaction (which gets a specific transaction). However, it does not explicitly contrast with all siblings.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides a usage hint for the fullTransactions parameter, but does not offer explicit guidance on when to use this tool versus alternatives (e.g., get_block_number for latest block number, get_transaction for individual transactions). The context from sibling tools helps, but the description itself could be more explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_block_numberA
Get the latest block number on a chain.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the burden of disclosing behavioral traits. It states the tool gets a block number, which implies a read-only operation, but does not address potential error states, rate limits, or idempotency. The description is adequate but minimal.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that fits the tool's simple purpose. There is no fluff, and all information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool has no output schema, the description omits details about the return value (e.g., data type, format). For a simple tool this is acceptable, but the description could be more complete by mentioning what the agent receives.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the only parameter 'chain' is well-described in the schema (enum list + description). The tool description adds no additional meaning beyond what the schema already provides, so baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get the latest block number on a chain.' It uses a specific verb ('Get') and resource ('latest block number') and implicitly distinguishes itself from sibling tools like get_balance and get_logs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives (e.g., rpc_call, eth_call). The usage is implied by the tool's name and description, but there are no when-not or alternative suggestions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_gas_priceA
Get current gas pricing on a chain: base gas price and the suggested priority fee (EIP-1559), both in wei (hex).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses outputs and format (wei hex) but does not mention data freshness, caching, or any side effects. Reasonably transparent for a read-only gas price tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single sentence that is concise, front-loaded with the main purpose, and contains no unnecessary information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no output schema, the description explains return values (base gas price, priority fee) and format (wei hex). For a simple tool with one parameter, it is mostly complete, though lacking mention of real-time nature.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with enum and description for the chain parameter. The tool description does not add additional meaning beyond the schema, so baseline score is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states it gets current gas pricing on a chain, specifying the exact outputs (base gas price and priority fee in wei hex). This distinguishes it from siblings that retrieve other blockchain data like balances or transactions.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives. The purpose is implied, but there is no guidance on prerequisites, data freshness, or when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_logsA
Fetch contract event logs (eth_getLogs). Heavy method: needs NODEFLARE_API_KEY or an x402 wallet (X402_PRIVATE_KEY) — costs ~$0.001 via x402.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| topics | No | Topic filters | |
| address | No | Contract address filter | |
| toBlock | Yes | Hex block number or tag | |
| fromBlock | Yes | Hex block number or tag, e.g. '0x112a880' or 'latest' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description discloses the tool is 'Heavy method' and requires authentication and payment, which is valuable. However, it doesn't mention rate limits, pagination, or return format, leaving some behavioral aspects undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences pack the essential purpose, authentication, and cost information without redundancy. Front-loaded with the core action, no wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (5 parameters, no output schema, no annotations), the description covers the key points: purpose, authentication, cost, and resource intensity. It could include more details about result handling, but is adequate for agent decision-making.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 100% description coverage for parameters, so the description adds no extra parameter-level meaning. It merely restates the underlying RPC method. Baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Fetch contract event logs (eth_getLogs)', which is a specific verb and resource. It distinguishes from sibling tools like eth_call or get_balance, which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit authentication requirements (NODEFLARE_API_KEY or x402 wallet) and cost information (~$0.001 via x402). While it doesn't state when not to use it, the context is clear enough for an agent to decide.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_balanceA
Get an ERC-20 token balance for an address, returned both raw and human-readable (uses the token's decimals and symbol).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| token | Yes | ERC-20 contract address | |
| address | Yes | Holder address to check |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that the balance is returned both raw and human-readable using the token's decimals and symbol. This adds value beyond the schema, though no annotations are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two concise sentences with no redundant information. The key information is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the main purpose and output format. Lacks mention of potential failure cases or assumptions (e.g., token must be a valid ERC-20). Adequate for the complexity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the description does not add significant meaning beyond the existing parameter descriptions. The tool description focuses on the overall functionality rather than individual parameters.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'ERC-20 token balance for an address', and distinguishes from sibling tools like get_balance (native coin) and get_token_metadata.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No explicit guidance on when to use this tool vs alternatives like get_balance or eth_call. The description implies it's for ERC-20 tokens, but doesn't mention when not to use it.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_token_metadataA
Get ERC-20 token metadata: name, symbol, decimals and total supply (raw + human-readable).
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| token | Yes | ERC-20 contract address |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden for behavioral disclosure. It only lists the returned fields but does not mention error handling, caching, auth requirements, or formatting details beyond 'raw + human-readable'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that front-loads the verb and resource. It includes all key elements without excess verbiage.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with 2 parameters and no output schema, the description is largely complete. It lists all returned metadata fields, though it could note the format of total supply (e.g., raw in wei) more explicitly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% (both parameters described in the schema). The description adds no additional meaning beyond the schema; it does not provide extra context for parameter usage or value constraints.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool retrieves ERC-20 token metadata (name, symbol, decimals, total supply) using the verb 'Get' and specifies the resource. It distinguishes from sibling tools like 'get_token_balance' and 'get_balance' which serve different purposes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description does not explicitly state when to use this tool versus alternatives, nor does it provide context on prerequisites or limitations. Usage is only implied by the resource name, but no explicit guidance is given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transactionB
Get a transaction by its hash (from, to, value, input, block, gas).
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | 0x-transaction hash | |
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description fully carries the behavioral disclosure burden. However, it fails to mention read-only nature, error handling (e.g., missing hash), or any side effects, leaving critical behavioral traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, clear sentence of 14 words with no filler. It efficiently conveys the core purpose and return fields.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's simplicity (2 required params, no output schema), the description covers the basics. However, it omits important contextual details such as expected behavior when the transaction is not found or if the chain is invalid.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with both parameters described in the schema. The description adds no semantic value beyond the schema, meeting the baseline for high coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'transaction', and the method 'by its hash', listing the fields returned. It distinguishes from sibling tools like get_transaction_receipt.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives (e.g., eth_call, get_transaction_receipt). The description only states what the tool does, without contextual usage rules.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_transaction_receiptA
Get the receipt of a transaction by hash (status, logs, gas used).
| Name | Required | Description | Default |
|---|---|---|---|
| hash | Yes | 0x-transaction hash | |
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full burden. It discloses that the tool returns status, logs, and gas used. This provides adequate transparency for a read-only retrieval tool, though it omits error behavior or null responses.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, efficient sentence that immediately conveys the tool's function. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the simple tool with two parameters and no output schema, the description provides sufficient context for an agent to use it correctly. It could be improved by noting potential errors or that the response contains more fields, but it's largely complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so parameters are fully documented in the schema. The description adds no extra meaning beyond what is already in the schema for chain and hash. Baseline score of 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Get the receipt of a transaction by hash' and lists key fields (status, logs, gas used). It distinguishes itself from sibling tools like get_balance or eth_call by specifying its focus on transaction receipts.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when one has a transaction hash and needs receipt data. While it lacks explicit when-not or alternative tool guidance, the purpose is clear enough for an agent to decide correctly.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
list_chainsA
List the 23 EVM chains NodeFlare serves, with chain IDs and endpoint URLs.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It clearly indicates a read-only listing operation with a fixed set of 23 chains. No destructive behavior or auth needs are implied; the description is transparent enough for a simple tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence that conveys all necessary information without wasted words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given no parameters and no output schema, the description is mostly complete. It specifies the content (chains, IDs, URLs) and count. However, it does not mention the output format (e.g., array or object), which would be helpful for an agent parsing the result.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
There are zero parameters, so baseline is 4. The description adds meaning beyond the empty schema by specifying the number of chains (23) and the type of information returned (chain IDs and endpoint URLs).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool lists 23 EVM chains with chain IDs and endpoint URLs, using a specific verb and resource. It distinguishes from siblings like eth_call and get_balance, which operate on specific chains rather than listing them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies usage when an agent needs to discover supported chains, but does not explicitly state when to use this tool versus alternatives or provide exclusions. No guidance on prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
rpc_callA
Make any JSON-RPC call on any supported chain. Heavy methods (eth_getLogs, trace_*, debug_*) need NODEFLARE_API_KEY or an x402 wallet.
| Name | Required | Description | Default |
|---|---|---|---|
| chain | Yes | Chain slug, e.g. 'eth', 'base', 'robinhood' | |
| method | Yes | JSON-RPC method name, e.g. 'eth_gasPrice' | |
| params | No | JSON-RPC params array |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Discloses that heavy methods need API key or wallet, but fails to mention other behaviors such as response format, error handling, rate limits, or idempotency. Without annotations, more detail on behavior is expected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences, both essential. Purpose stated upfront, followed by a critical usage note. No wasted words, excellent structure.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Adequate for a generic RPC tool with full schema coverage, but lacks description of return value format, examples, or guidance on chain slug usage beyond the enum. Could be more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so baseline is 3. Description adds no extra meaning beyond schema; heavy method reference is tangential to parameters. No enhancement of parameter understanding.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Clearly states the tool performs any JSON-RPC call on any supported chain, with a specific verb and resource. This distinguishes it from sibling tools like eth_call or get_balance which are specific methods.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides a condition for heavy methods requiring authentication, but does not explicitly guide when to use this tool versus alternative sibling tools. Usage is implied for arbitrary RPC methods not covered by siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
5 tool updates
- Added
get_block - Added
get_gas_price - Added
get_token_balance - Added
get_token_metadata - Added
get_transaction
7 tool updates
v0.1.2- First observed
eth_call - First observed
get_balance - First observed
get_block_number - First observed
get_logs - First observed
get_transaction_receipt - First observed
list_chains - First observed
rpc_call
TDQS
Scored across 12 tools
Each tool targets a distinct operation: eth_call for contract calls, get_balance for native balance, get_block for blocks, etc. No overlaps; even eth_call and rpc_call are differentiated by specificity.
All tools follow a consistent verb_noun pattern in snake_case (e.g., get_balance, get_block, list_chains). Even eth_call and rpc_call adhere to this pattern with specific verbs.
12 tools is well-scoped for an EVM blockchain query server, covering essential read operations without bloat. The count feels complete yet manageable.
Covers major query operations (balances, blocks, transactions, logs, gas, metadata, chain list, generic RPC). Missing estimateGas and storage queries, but for a read-only interface, coverage is strong.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
Wallet-signed Solana RPC for AI agents. No API keys, LLM-safe amounts, pay-per-call in SOL.
30 pay-per-call APIs for AI agents: compliance, trade, safety, web, data. USDC on Base via x402.
Pay-per-call x402 gateway: agent tools, OpenAI-compatible LLM, market data, RPC, security audits.
Manage your blockchain infrastructure across 80+ chains with your agents.
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceBlockchain RPC via DRPC. Exposes eth_call, eth_getBalance, gas estimation, and other JSON-RPC methods as MCP tools across 100+ blockchains23MIT- AlicenseAqualityCmaintenanceEnables AI agents to access crypto/web3 data across 5 chains with pay-per-call billing in USDC via x402, no API key required, and built-in spend caps.3647MIT

RouteMesh MCP Serverofficial
AlicenseAqualityCmaintenanceEnables querying blockchain data across multiple EVM chains via RouteMesh, offering built-in RPC tools for blocks, transactions, logs, balances, and gas estimation, plus customer management tools for API keys and usage.111781ISC- AlicenseNot gradedqualityDmaintenanceMulti-chain x402 payment gateway enabling AI agents to pay per HTTP call with real on-chain settlement across 5 mainnet chains, providing 18 paid endpoints for utilities, data, and security.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/Nodeflare-app/nodeflare-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server