Agent Intelligence API

The onchain answers your agent asks for

Six question-shaped endpoints over all 23 chains — balances, USD portfolios, approvals, transaction simulation, one-call wallet reports and token-safety scores. Each replaces a fan-out of raw RPC with a single request. Unified across the young chains the big indexers leave as empty shells — Zircuit, Robinhood Chain, Plasma, Ink, Soneium — so an agent gets the same intelligence there as on Ethereum and Base.

Two payment doors on every endpoint: call it with a free or paid NodeFlare API key (a keyed tier for the heavy endpoints is being added), or pay per call in USDC over x402 — no account, built for AI agents. Exposed as MCP tools, too.

The six endpoints

Balanceshttps://rpc.nodeflare.app/data/balances
Portfoliohttps://rpc.nodeflare.app/data/portfolio
Allowanceshttps://rpc.nodeflare.app/data/allowances
Simulatehttps://rpc.nodeflare.app/data/simulate
Wallet reporthttps://rpc.nodeflare.app/data/wallet-report
Token safetyhttps://rpc.nodeflare.app/data/token-safety

Call any endpoint with an API key, or append /x402 to pay per call in USDC with no account (e.g. …/data/token-safety/x402). Explicit-token balances and portfolio are free on the public tier (rate-limited); heavy work — token discovery (discover: true), simulation, safety — runs on a key or over x402.

Question-shaped, not RPC

One request per real question — "what does it hold?", "will this tx revert?", "is this token safe?" — across all 23 chains, no fan-out in your code.

Unified young-chain intelligence

Zircuit, Robinhood, Plasma, Ink, Soneium, BOB, Mode — the chains the big indexers leave as empty shells get the same balances, simulation and safety as the majors.

Two doors, agent-ready

API key or pay-per-call over x402, and every endpoint is an MCP tool — Claude, Cursor and ChatGPT can call and pay for it autonomously.

Try it now

# Native + ERC-20 balances across chains (free public tier)
curl -X POST https://rpc.nodeflare.app/data/balances \
  -H 'Content-Type: application/json' \
  -d '{
    "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "chains": ["base", "eth", "robinhood"],
    "tokens": { "base": ["0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913"] }
  }'

# USD-valued portfolio with a rolled-up total
curl -X POST https://rpc.nodeflare.app/data/portfolio \
  -H 'Content-Type: application/json' \
  -d '{ "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045" }'

Auto-discover holdings (x402, no account)

Don't know which tokens an address holds? Set discover: true and pay per call in USDC — the endpoint finds them for you.

import { wrapFetchWithPaymentFromConfig } from "@x402/fetch";
import { ExactEvmScheme } from "@x402/evm";
import { privateKeyToAccount } from "viem/accounts";

const account = privateKeyToAccount(process.env.PRIVATE_KEY); // USDC on Base
const pay = wrapFetchWithPaymentFromConfig(fetch, {
  schemes: [{ network: "eip155:8453", client: new ExactEvmScheme(account) }],
});

// discover: true auto-finds every token the address holds (paid, no account)
const res = await pay("https://rpc.nodeflare.app/data/portfolio/x402", {
  method: "POST",
  headers: { "Content-Type": "application/json" },
  body: JSON.stringify({ address: "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", discover: true }),
});

Composite intelligence — one call, whole answer

Three endpoints that do the reasoning agents would otherwise stitch together from many raw calls — on every chain, including the young ones.

Know any wallet

/data/wallet-report

Balances, USD portfolio and outstanding approvals for an address, composed in one response — holdings, value and revoke-risk together.

Pre-flight any tx

/data/simulate

Before you sign: would it revert? how much gas? which assets move in and out? The pre-signature check that stops an agent burning gas on a doomed or malicious call.

Screen any token

/data/token-safety

Contract & ownership status, upgradeable-proxy detection, holder concentration, a honeypot check (can you actually sell?), and one aggregate risk score — before an agent touches the token.

# One-call wallet report: balances + portfolio + approvals in a single response
curl -X POST https://rpc.nodeflare.app/data/wallet-report \
  -H 'Content-Type: application/json' \
  -d '{ "address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045", "chains": ["base","eth","zircuit"] }'

# Pre-flight a transaction before signing: reverts? gas? which assets move?
curl -X POST https://rpc.nodeflare.app/data/simulate \
  -H 'Content-Type: application/json' \
  -d '{
    "chain": "base",
    "from": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
    "to":   "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
    "data": "0xa9059cbb..."
  }'

# Screen a token: ownership, holder concentration, honeypot check, risk score
curl -X POST https://rpc.nodeflare.app/data/token-safety \
  -H 'Content-Type: application/json' \
  -d '{ "chain": "zircuit", "token": "0x..." }'

Each also runs over x402 — append /x402 to pay per call in USDC with no account — and each is an MCP tool for autonomous agents.

Pricing

Public balances / portfolio (explicit tokens)Free (rate-limited)
x402 balances / portfolio~$0.0003 / chain
x402 token discovery (eth_getLogs)~$0.0033 / chain
x402 wallet report / simulate / token safetypriced by work done
Any endpoint with a NodeFlare API keybilled by compute unit

Pay per call in USDC on Base, Polygon or Arbitrum via the x402 protocol, or call with an API key — a keyed tier for the heavy endpoints is being added. You only pay for calls that succeed.

Agent Intelligence API — FAQ

What is the Agent Intelligence API?

It's the layer of onchain answers agents actually ask for, over every chain NodeFlare serves. Six endpoints: /data/balances (native + ERC-20 balances in one POST), /data/portfolio (the same with USD valuation and a rolled-up total), /data/allowances (outstanding approvals / revoke-risk), /data/simulate (pre-flight a tx: reverts?/gas/asset changes), /data/wallet-report (balances + portfolio + approvals in one call), and /data/token-safety (ownership + holder concentration + honeypot check + risk score). Each replaces a fan-out of raw RPC calls with a single question-shaped request.

How is this different from Alchemy or Moralis portfolio APIs?

It covers the young chains they don't. NodeFlare runs its own nodes for chains like Robinhood Chain (4663), Plasma, Ink, Zircuit, Soneium, BOB and Mode, so their balances land in the same response as Ethereum and Base. Across all 23 chains, one call, one shape.

How does token discovery work?

Set discover: true and NodeFlare scans incoming Transfer logs to find every ERC-20 the address holds — no need to pass contract addresses. It's comprehensive in one pass on short-history young chains and scans recent windows on large chains. Results are USD-priced, junk-symbol spam is filtered, and near-worthless tokens are dropped by default (tune with minUsd, includeSpam, includeDust). Discovery uses eth_getLogs, so it's a paid method — call the /x402 endpoints.

What does /data/allowances return?

/data/allowances returns the ERC-20 approvals a wallet has granted — what it approved, for how much, and unlimited flags — across the 23 chains. It's the revoke-risk view of an address: which spenders can still move its tokens. Call it with an API key or pay per call in USDC over x402.

What does /data/wallet-report do?

It answers "know everything about this wallet" in one round-trip: balances, USD-valued portfolio and outstanding approvals for an address, composed server-side across every chain NodeFlare serves. Instead of an agent orchestrating three separate calls (and paying three round-trips of latency), /data/wallet-report returns the whole picture — holdings, value and revoke-risk — in a single response.

What does /data/simulate do?

It pre-flights a transaction before you sign it. Pass the chain, from, to, data (and optional value) and it returns whether the tx would revert, the gas it would use, and the asset changes it would produce — which tokens leave and enter the wallet. It's the pre-signature safety check an agent needs to avoid burning gas on a doomed or malicious call, and it works on the young chains where no third-party simulator exists.

What does /data/token-safety do?

It screens an ERC-20 for the ways it can rug you and returns a single risk score. In one call you get contract & ownership status, upgradeable-proxy detection (can the logic be changed?), holder concentration (how much the top holders control), and a honeypot check (can you actually sell it?) — plus the aggregate risk rating, so an agent can decide whether a token is safe to touch before it trades. Available on the young chains, not just the majors.

How do I pay, and how much?

Every endpoint has two payment doors. (1) Call it with a NodeFlare API key — the free tier covers explicit-token reads on /data/balances and /data/portfolio, and a keyed tier (being added) unlocks the heavy endpoints and higher limits, billed by compute unit. (2) Or pay per call in USDC on Base, Polygon or Arbitrum via the /x402 variants — no account, no key. Balances cost about $0.0003 per chain; token discovery about $0.0033 per chain (heavy log scanning); the composite and simulation endpoints are priced by the work they do.

Can AI agents use it directly?

Yes — the whole suite is exposed as MCP tools (get_multichain_balances, get_portfolio, get_allowances, simulate_transaction, wallet_report, token_safety) in the NodeFlare MCP server (npm nodeflare-mcp and the remote endpoint at mcp.nodeflare.app/mcp), so Claude, Cursor and ChatGPT connectors can call them. The x402 variants are also listed in the x402 Bazaar and /services.json for autonomous discovery and payment.

Go deeper

Prefer a key over per-call payments?

A free NodeFlare key unlocks heavy methods and higher limits — 2,000,000 compute units per month, no credit card.

Get your free API key →