# Agent Data Tools: Chain data (remote · agent-data-tools.revmesh2074.workers.dev)

64 tools: balances, blocks, gas, txs and logs on 5 EVM chains, plus Bitcoin. 25 free calls.

- Trust score: 70/100 (medium)
- Registry status: active
- Liveness: live
- Owner verified: yes
- Last scored: 2026-10-23

## Components

- remote · `agent-data-tools.revmesh2074.workers.dev`: 70/100 (this document), [markdown](https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain.md), [page](https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain)

## Channel facts

- Endpoint: `https://agent-data-tools.revmesh2074.workers.dev/mcp/chain`
- Transports: `streamable-http`
- Auth: `none`
- Version: `1.50.5`

## Trust breakdown

How this component scores in each security and reliability category. Every signal is checked automatically against the live server, and we only credit what we can confirm. Scores are 0–100 per category. Scoring method: https://verifymcp.io/docs/scoring (what has changed: https://verifymcp.io/docs/scoring/changelog)

Scored 2026-10-23.

- **Endpoint Security**: 69/100
  - The endpoint's TLS certificate is valid, in date, and uses a strong key.
  - No authorisation is required to call this server. Every tool declares its destructiveHint and none is destructive, so open access doesn't expose one.
  - HTTPS enforcement could not be verified: the plaintext port answered with HTTP 405, which proves neither a plaintext path nor enforcement.
  - The HSTS (Strict-Transport-Security) header is present.
  - DNSSEC check failed: this domain isn't protected by DNSSEC.
- **Transport & Reachability**: 100/100
  - Verified streamable-http transport via a live MCP handshake.
- **Schema Quality & AI Usability**: 70/100
  - AI-judged instruction clarity (excellent).
  - Context-footprint check failed: tool/resource definitions use about 12604 tokens (~196/item across 64 items; 64 tools + 0 resources), over budget; trim descriptions and params.
  - Usage-examples check failed: none of the tools include examples.
- **Stability & Change Management**: 13/100
  - Stability observed for 4 of 30 days with no destabilising changes; credit accrues until the full window elapses.
- **Tool Coverage**: 100/100
  - 100% of tools have a non-trivial description (not blank, and not just the tool's name).
  - 100% of tool parameters carry a description.
  - Structured output schemas are declared (2% of tools); any adoption earns full credit.
- **Tool Safety**: 100/100
  - No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.
  - We read all 64 captured tool definition(s), and no name or description among them implies an irreversible operation.
  - An AI judge read all 65 captured unit(s) of tool text and found none that tries to manipulate the model reading it.
- **Capabilities**: 100/100
  - Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.

## Install

### How do I install the Agent Data Tools: Chain data MCP server?

Agent Data Tools: Chain data is a hosted endpoint at https://agent-data-tools.revmesh2074.workers.dev/mcp/chain, so there is nothing to install locally. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.

### Claude

```bash
claude mcp add --transport http nutshell2000-agent-data-tools-chain 'https://agent-data-tools.revmesh2074.workers.dev/mcp/chain'
```

### Cursor

```json
{
  "mcpServers": {
    "nutshell2000-agent-data-tools-chain": {
      "url": "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
    }
  }
}
```

### VS Code

```json
{
  "servers": {
    "nutshell2000-agent-data-tools-chain": {
      "type": "http",
      "url": "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
    }
  }
}
```

### Codex

```toml
[mcp_servers.nutshell2000-agent-data-tools-chain]
url = "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
```

### opencode

```json
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "nutshell2000-agent-data-tools-chain": {
      "type": "remote",
      "url": "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain",
      "enabled": true
    }
  }
}
```

### OpenClaw

```bash
openclaw mcp add nutshell2000-agent-data-tools-chain --url 'https://agent-data-tools.revmesh2074.workers.dev/mcp/chain' --transport streamable-http
```

### Hermes

```yaml
mcp_servers:
  nutshell2000-agent-data-tools-chain:
    url: "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
```

### Netclaw

```json
{
  "McpServers": {
    "nutshell2000-agent-data-tools-chain": {
      "Transport": "http",
      "Url": "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
    }
  }
}
```

### Vellum

```bash
assistant mcp add nutshell2000-agent-data-tools-chain -t streamable-http -u 'https://agent-data-tools.revmesh2074.workers.dev/mcp/chain'
```

### Other

```json
{
  "mcpServers": {
    "nutshell2000-agent-data-tools-chain": {
      "type": "http",
      "url": "https://agent-data-tools.revmesh2074.workers.dev/mcp/chain"
    }
  }
}
```

The mcpServers block is a cross-client convention. Remote transports vary, so check your client's docs.

## Changelog

Every change recorded for this component, newest first. Days that predate change tracking, or that we cannot explain, say so: "we were watching and nothing happened" and "we were not watching" are different claims.

### 2026-10-22 (score 70, +1)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “op_is_contract” rewrote its description, which is the text the model reads
- [security] Tool “arb_balance” rewrote its description, which is the text the model reads
- [security] Tool “arb_block” rewrote its description, which is the text the model reads
- [security] Tool “arb_gas” rewrote its description, which is the text the model reads
- [security] Tool “arb_is_contract” rewrote its description, which is the text the model reads
- [security] Tool “arb_logs” rewrote its description, which is the text the model reads
- [security] Tool “arb_nonce” rewrote its description, which is the text the model reads
- [security] Tool “arb_receipt” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_info” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “base_balance” rewrote its description, which is the text the model reads
- [security] Tool “base_block” rewrote its description, which is the text the model reads
- [security] Tool “base_is_contract” rewrote its description, which is the text the model reads
- [security] Tool “base_logs” rewrote its description, which is the text the model reads
- [security] Tool “base_nonce” rewrote its description, which is the text the model reads
- [security] Tool “base_receipt” rewrote its description, which is the text the model reads
- [security] Tool “base_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “base_token_info” rewrote its description, which is the text the model reads
- [security] Tool “base_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “btc_address” rewrote its description, which is the text the model reads
- [security] Tool “ens” rewrote its description, which is the text the model reads
- [security] Tool “eth_balance” rewrote its description, which is the text the model reads
- [security] Tool “eth_block” rewrote its description, which is the text the model reads
- [security] Tool “eth_gas” rewrote its description, which is the text the model reads
- [security] Tool “eth_is_contract” rewrote its description, which is the text the model reads
- [security] Tool “eth_logs” rewrote its description, which is the text the model reads
- [security] Tool “eth_nonce” rewrote its description, which is the text the model reads
- [security] Tool “eth_receipt” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_info” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “keccak” rewrote its description, which is the text the model reads
- [security] Tool “ln_invoice” rewrote its description, which is the text the model reads
- [security] Tool “network” rewrote its description, which is the text the model reads
- [security] Tool “op_balance” rewrote its description, which is the text the model reads
- [security] Tool “op_block” rewrote its description, which is the text the model reads
- [security] Tool “op_gas” rewrote its description, which is the text the model reads
- [security] Tool “op_logs” rewrote its description, which is the text the model reads
- [security] Tool “op_nonce” rewrote its description, which is the text the model reads
- [security] Tool “op_receipt” rewrote its description, which is the text the model reads
- [security] Tool “op_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “op_token_info” rewrote its description, which is the text the model reads
- [security] Tool “op_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “polygon_balance” rewrote its description, which is the text the model reads
- [security] Tool “polygon_block” rewrote its description, which is the text the model reads
- [security] Tool “polygon_gas” rewrote its description, which is the text the model reads
- [security] Tool “polygon_is_contract” rewrote its description, which is the text the model reads
- [security] Tool “polygon_logs” rewrote its description, which is the text the model reads
- [security] Tool “polygon_nonce” rewrote its description, which is the text the model reads
- [security] Tool “polygon_receipt” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_info” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “polygon_tx” rewrote its description, which is the text the model reads
- [security] Tool “arb_tx” rewrote its description, which is the text the model reads
- [security] Tool “eth_tx” rewrote its description, which is the text the model reads
- [security] Tool “op_tx” rewrote its description, which is the text the model reads
- [functional] Server version: 1.50.3 → 1.50.5
- [functional] Server version: 1.50.2 → 1.50.3
- [functional] Server version: 1.50.1 → 1.50.2
- [functional] Server version: 1.49.1 → 1.50.1
- [functional] Server version: 1.48.6 → 1.49.1
- [functional] Server version: 1.48.5 → 1.48.6
- [functional] Server version: 1.48.2 → 1.48.5
- [functional] Server version: 1.48.0 → 1.48.2
- [functional] Server version: 1.47.15 → 1.48.0
- [functional] Server version: 1.47.7 → 1.47.15
- [functional] Server version: 1.45.3 → 1.47.7
- [cosmetic] Tool “wallet_balances” changed its title: Wallet balance: native and USDC balances on 5 networks → Wallet balance, USDC balance: native and USDC balances on 5 networks
- [cosmetic] Tool “ens” changed its title: ENS name to address and address to ENS name → ENS name lookup: ENS name to address and address to ENS name

### 2026-10-21 (score 69, 0)

- [functional] Server version: 1.45.1 → 1.45.3
- [functional] Server version: 1.45.0 → 1.45.1
- [functional] Server version: 1.44.0 → 1.45.0
- [cosmetic] Tool “wallet_balances” changed its title: Native and USDC balances on 5 networks → Wallet balance: native and USDC balances on 5 networks

### 2026-10-20 (score 69, 0)

- [security] The server rewrote its instructions, which are the text every model session reads
- [security] Tool “arb_balance” rewrote its description, which is the text the model reads
- [security] Tool “arb_block” rewrote its description, which is the text the model reads
- [security] Tool “arb_logs” rewrote its description, which is the text the model reads
- [security] Tool “arb_receipt” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_info” rewrote its description, which is the text the model reads
- [security] Tool “arb_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “base_balance” rewrote its description, which is the text the model reads
- [security] Tool “base_block” rewrote its description, which is the text the model reads
- [security] Tool “base_logs” rewrote its description, which is the text the model reads
- [security] Tool “base_receipt” rewrote its description, which is the text the model reads
- [security] Tool “base_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “base_token_info” rewrote its description, which is the text the model reads
- [security] Tool “base_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “eth_balance” rewrote its description, which is the text the model reads
- [security] Tool “eth_block” rewrote its description, which is the text the model reads
- [security] Tool “eth_logs” rewrote its description, which is the text the model reads
- [security] Tool “eth_receipt” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_info” rewrote its description, which is the text the model reads
- [security] Tool “eth_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “op_balance” rewrote its description, which is the text the model reads
- [security] Tool “op_block” rewrote its description, which is the text the model reads
- [security] Tool “op_logs” rewrote its description, which is the text the model reads
- [security] Tool “op_receipt” rewrote its description, which is the text the model reads
- [security] Tool “op_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “op_token_info” rewrote its description, which is the text the model reads
- [security] Tool “op_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “polygon_balance” rewrote its description, which is the text the model reads
- [security] Tool “polygon_block” rewrote its description, which is the text the model reads
- [security] Tool “polygon_logs” rewrote its description, which is the text the model reads
- [security] Tool “polygon_receipt” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_balance” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_info” rewrote its description, which is the text the model reads
- [security] Tool “polygon_token_transfers” rewrote its description, which is the text the model reads
- [security] Tool “wallet” rewrote its description, which is the text the model reads
- [security] Tool “arb_gas” rewrote its description, which is the text the model reads
- [security] Tool “base_gas” rewrote its description, which is the text the model reads
- [security] Tool “btc_fees” rewrote its description, which is the text the model reads
- [security] Tool “eth_gas” rewrote its description, which is the text the model reads
- [security] Tool “network” rewrote its description, which is the text the model reads
- [security] Tool “op_gas” rewrote its description, which is the text the model reads
- [security] Tool “polygon_gas” rewrote its description, which is the text the model reads
- [functional regression] Schema quality: 176 → 196
- [functional improvement] Stability: unverified → 0.03
- [functional] Server version: 1.41.0 → 1.44.0
- [functional] Server version: 1.40.0 → 1.41.0
- [functional] Server version: 1.39.3 → 1.40.0
- [functional] Server version: 1.37.1 → 1.39.3
- [functional] Server version: 1.36.1 → 1.37.1
- [functional] Server version: 1.35.3 → 1.36.1
- [cosmetic] “arb_gas” added an optional parameter “only”
- [cosmetic] “base_gas” added an optional parameter “only”
- [cosmetic] “btc_fees” added an optional parameter “only”
- [cosmetic] “eth_gas” added an optional parameter “only”
- [cosmetic] “network” added an optional parameter “only”
- [cosmetic] “op_gas” added an optional parameter “only”
- [cosmetic] “polygon_gas” added an optional parameter “only”
- [cosmetic] “arb_gas” reworded the description of “only”
- [cosmetic] “arb_token_balance” reworded the description of “token”
- [cosmetic] “arb_token_info” reworded the description of “token”
- [cosmetic] “arb_token_transfers” reworded the description of “blocks”
- [cosmetic] “arb_token_transfers” reworded the description of “token”
- [cosmetic] “base_gas” reworded the description of “only”
- [cosmetic] “base_token_balance” reworded the description of “token”
- [cosmetic] “base_token_info” reworded the description of “token”
- [cosmetic] “base_token_transfers” reworded the description of “blocks”
- [cosmetic] “base_token_transfers” reworded the description of “token”
- [cosmetic] “btc_fees” reworded the description of “only”
- [cosmetic] “eth_gas” reworded the description of “only”
- [cosmetic] “eth_token_balance” reworded the description of “token”
- [cosmetic] “eth_token_info” reworded the description of “token”
- [cosmetic] “eth_token_transfers” reworded the description of “blocks”
- [cosmetic] “eth_token_transfers” reworded the description of “token”
- [cosmetic] “network” reworded the description of “only”
- [cosmetic] “op_gas” reworded the description of “only”
- [cosmetic] “op_token_balance” reworded the description of “token”
- [cosmetic] “op_token_info” reworded the description of “token”
- [cosmetic] “op_token_transfers” reworded the description of “blocks”
- [cosmetic] “op_token_transfers” reworded the description of “token”
- [cosmetic] “polygon_gas” reworded the description of “only”
- [cosmetic] “polygon_token_balance” reworded the description of “token”
- [cosmetic] “polygon_token_info” reworded the description of “token”
- [cosmetic] “polygon_token_transfers” reworded the description of “blocks”
- [cosmetic] “polygon_token_transfers” reworded the description of “token”

### 2026-10-19 (score 69)

First indexed and scored.

## MCP tools (64)

### `wallet_balances` (~196 tokens)

Wallet balance, USDC balance: native and USDC balances on 5 networks

Read a wallet's native coin and USDC balances on Base, Ethereum, Arbitrum, Optimism and Polygon in one call, live from each network, plus the USDC total. Use to find where a wallet's funds are before a payment or bridge; for one token on one network use <chain>_token_balance, for all tokens on Base use wallet_portfolio. A network whose nodes do not answer is listed with an error instead of failing the call. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.005/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address

### `btc_fees` (~161 tokens)

Bitcoin fee rates and mempool status

Current Bitcoin network fee rates in sat/vB for next-block, half-hour, one-hour and economy confirmation, the estimated cost in sats of a typical payment, mempool size and total pending fees, and the latest block height. Use before sending a Bitcoin transaction or to decide whether to wait for lower fees. Price $0.002/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

Output parameters:

- `blockHeight` (integer)
- `checkedAt` (string): Server retrieval time in UTC. Upstream endpoints are not an atomic snapshot.
- `fees` (object)
- `limitations` (array)
- `mempool` (object)
- `network`
- `source`
- `typicalPaymentSats` (object)
- `typicalPaymentVbytes`: Illustrative transaction-size assumption; not the buyer's transaction size.
- `unit`

### `eth_balance` (~175 tokens)

Ethereum native balance

Native ETH balance (eth_getBalance) of any 0x wallet address on Ethereum at the latest block, in wei and in ETH. Use to check whether a wallet can pay gas or a transfer; for ERC-20 tokens use eth_token_balance, for all holdings at once use wallet_portfolio. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet or contract address

### `eth_gas` (~168 tokens)

Ethereum gas price

Current gas price on Ethereum (eth_gasPrice): gas price, base fee and suggested priority fee in gwei, plus what a plain ETH transfer (21,000 gas) costs right now. Takes no input. Use before sending a transaction or to decide whether to wait; for the fee a past transaction actually paid use eth_receipt. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

### `base_gas` (~189 tokens)

Base network gas price and fee estimate

Live gas prices on Base (chain 8453) read from the latest block: base fee and priority fee in gwei, suggested maxFeePerGas and maxPriorityFeePerGas in wei for an EIP-1559 transaction, how full the latest block is, and the estimated execution fee in ETH for an ETH transfer and an ERC-20 transfer. Use before sending a transaction on Base or to decide whether to wait for lower fees. Price $0.002/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

### `wallet` (~222 tokens)

Base wallet balances and account nonce snapshot

Base only (all 5 chains: wallet_balances; USD values: wallet_portfolio). An address on Base: ETH and major token balances (USDC, WETH, cbBTC, DAI, USDbC, cbETH, AERO, EURC) plus up to 20 token addresses you pass, the account nonce, and whether it is an EOA, a contract or an EIP-7702 account. The nonce counts outgoing transactions only; not transfer or trading history. Use to check a counterparty's holdings. Example: address=0x4200000000000000000000000000000000000006. Price $0.005/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): Wallet or contract address on Base (0x...)
- `tokens` (string): Optional comma-separated extra ERC-20 addresses to check (max 20)

### `btc_address` (~163 tokens)

Bitcoin address balance and activity

Balance and activity of any Bitcoin mainnet address (legacy, P2SH or bech32): confirmed balance in sats and BTC, unconfirmed pending amount, total received and sent, and transaction counts. Use for payment verification, checking whether a deposit arrived, and wallet monitoring. Example: address=bc1qxy2kgdygjrsqtzq2n0yrf2493p83kkfjhx0wlh. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): Bitcoin mainnet address (1..., 3... or bc1...)

### `ln_invoice` (~128 tokens)

Decode a Lightning invoice

Decode a BOLT11 Lightning Network invoice without paying it: network, amount in sats and BTC, description, payment hash, creation time, expiry time and whether it has already expired. Use to check what an invoice asks for before an agent pays it. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `invoice` (string, required): BOLT11 invoice string starting with ln (lnbc... for mainnet)

### `base_tx` (~194 tokens)

Base transaction status and details

Look up any transaction on Base by hash: whether it succeeded, reverted or is still pending, sender and receiver, ETH value, called method id, block number and time, number of confirmations, gas used, gas price and the execution fee paid, and whether it created a contract. Use to confirm that a payment or contract call went through before acting on it. Example: hash=0x7d108fa131ed949c76d50caf2e7dfe25fc9903b9d276c40a0446d8afbdfe86b0. Price $0.003/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): Transaction hash on Base: 0x followed by 64 hex characters

### `base_allowance` (~176 tokens)

ERC-20 token approval check on Base

Check how much of a wallet's ERC-20 token a spender contract is approved to move on Base: the raw and formatted allowance, the token symbol and decimals, and whether the approval is unlimited. Use before a swap or deposit to see if an approve transaction is needed, and to audit a wallet for risky unlimited approvals. Price $0.002/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `owner` (string, required): Wallet address that holds the token (0x...)
- `spender` (string, required): Address allowed to spend, usually a router or protocol contract (0x...)
- `token` (string, required): ERC-20 token contract address on Base (0x...)

### `ens` (~151 tokens)

ENS name lookup: ENS name to address and address to ENS name

Resolve an Ethereum Name Service name such as vitalik.eth to its wallet address and avatar, or look up the primary ENS name of an address (reverse resolution). Read live from Ethereum mainnet. Use to turn a human-readable name into a payable address, or to show a readable name for a counterparty address. Example: name=vitalik.eth. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `name` (string, required): An ENS name such as vitalik.eth, or an address (0x...) for reverse lookup

### `base_balance` (~175 tokens)

Base native balance

Native ETH balance (eth_getBalance) of any 0x wallet address on Base at the latest block, in wei and in ETH. Use to check whether a wallet can pay gas or a transfer; for ERC-20 tokens use base_token_balance, for all holdings at once use wallet_portfolio. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet or contract address

### `base_token_balance` (~202 tokens)

Base ERC-20 balance

ERC-20 token balance of a wallet on Base (USDC, USDT, WETH or any token, via balanceOf): raw amount, decimals, symbol and the human-readable amount, live from the token contract. Use to check stablecoin or token holdings before a transfer or trade; for the native coin use base_balance. Both inputs are 0x addresses (40 hex characters); no contract returns 404 and a non-ERC-20 contract 422, both uncharged. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `token` (string, required): Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address

### `base_token_info` (~205 tokens)

Base ERC-20 token info

Look up the name, symbol, decimals and total supply of an ERC-20 token contract on Base, live from the contract. Use to identify an unknown token address or to format raw amounts; for a holder's balance use base_token_balance. Input is a ticker (USDC, WETH…) or the token's 0x contract address; an address that is not an ERC-20 contract returns 422, uncharged. Example: token=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `token` (string, required): Token: a ticker such as USDC or WETH, or the 0x ERC-20 contract address

### `base_block` (~142 tokens)

Base block

Latest block number and block details on Base, or any block by decimal number: hash, timestamp, transaction count, gas used and limit, base fee in gwei and producer. Use for timestamps and confirmation counts; for current fees use base_gas. A block that does not exist yet returns 404, uncharged. Example: number=latest. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `number` (string): Block number, or 'latest' (default)

### `base_receipt` (~200 tokens)

Base transaction receipt

Transaction receipt on Base (eth_getTransactionReceipt): success or reverted, gas used, effective gas price, fee paid in ETH, number of event logs and any contract created. Use to confirm a payment or call went through; for sender, value and calldata use base_tx. Input is a 0x-prefixed 64-hex hash; a pending or unknown hash returns 404, uncharged. Example: hash=0x7d108fa131ed949c76d50caf2e7dfe25fc9903b9d276c40a0446d8afbdfe86b0. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `base_nonce` (~158 tokens)

Base account nonce

Read the transaction count (nonce) of a 0x address on Base, both confirmed and including pending transactions. Use to build the next transaction or to tell whether an address has ever sent anything; for its balance use base_balance. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `base_is_contract` (~172 tokens)

Base contract check

Check whether a 0x address on Base is a smart contract or a plain wallet: bytecode size, and whether it is an EIP-1167 minimal proxy and which implementation it points to. Use before sending funds or approving a spender; for a fuller risk verdict use check_counterparty. A malformed address is rejected with 400, uncharged. Example: address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `base_logs` (~221 tokens)

Base recent event logs

Recent contract event logs on Base (eth_getLogs): the events a contract emitted over the last N blocks (1-1,000, default 50), optionally filtered by topic0 (the 0x 32-byte event signature hash). Returns up to 100 logs with block, transaction hash and topics. Use to watch transfers or contract events; for one transaction's outcome use base_receipt. Example: address=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x contract address
- `blocks` (integer): How many recent blocks to scan (1-1000, default 50)
- `topic0` (string): Optional 0x event signature hash to filter by

### `base_token_transfers` (~266 tokens)

Base wallet token transfers

List a wallet's recent transfers of one ERC-20 token (default USDC) on Base, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use base_token_balance. Malformed addresses are rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `blocks` (integer): How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 67 minutes on Base)
- `token` (string): Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)

### `eth_token_balance` (~202 tokens)

Ethereum ERC-20 balance

ERC-20 token balance of a wallet on Ethereum (USDC, USDT, WETH or any token, via balanceOf): raw amount, decimals, symbol and the human-readable amount, live from the token contract. Use to check stablecoin or token holdings before a transfer or trade; for the native coin use eth_balance. Both inputs are 0x addresses (40 hex characters); no contract returns 404 and a non-ERC-20 contract 422, both uncharged. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `token` (string, required): Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address

### `eth_token_info` (~208 tokens)

Ethereum ERC-20 token info

Look up the name, symbol, decimals and total supply of an ERC-20 token contract on Ethereum, live from the contract. Use to identify an unknown token address or to format raw amounts; for a holder's balance use eth_token_balance. Input is a ticker (USDC, WETH…) or the token's 0x contract address; an address that is not an ERC-20 contract returns 422, uncharged. Example: token=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `token` (string, required): Token: a ticker such as USDC or WETH, or the 0x ERC-20 contract address

### `eth_block` (~142 tokens)

Ethereum block

Latest block number and block details on Ethereum, or any block by decimal number: hash, timestamp, transaction count, gas used and limit, base fee in gwei and producer. Use for timestamps and confirmation counts; for current fees use eth_gas. A block that does not exist yet returns 404, uncharged. Example: number=latest. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `number` (string): Block number, or 'latest' (default)

### `eth_tx` (~197 tokens)

Ethereum transaction

Look up an Ethereum transaction by hash: sender, recipient, value in ETH, nonce, gas limit, the 4-byte function selector and its block. Use to see what was sent or whether it exists; for success or failure and fees paid use eth_receipt, for emitted events eth_logs. Input is a 0x-prefixed 64-hex hash; an unknown hash returns 404, uncharged. Example: hash=0x9531467e03a57bbb5cd080439ac3b10c0cefed147282eb2ff709b02c897afcbf. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `eth_receipt` (~195 tokens)

Ethereum transaction receipt

Transaction receipt on Ethereum (eth_getTransactionReceipt): success or reverted, gas used, effective gas price, fee paid in ETH, number of event logs and any contract created. Use to confirm a payment or call went through; for sender, value and calldata use eth_tx. Input is a 0x-prefixed 64-hex hash; a pending or unknown hash returns 404, uncharged. Example: hash=0x9531467e03a57bbb5cd080439ac3b10c0cefed147282eb2ff709b02c897afcbf. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `eth_nonce` (~158 tokens)

Ethereum account nonce

Read the transaction count (nonce) of a 0x address on Ethereum, both confirmed and including pending transactions. Use to build the next transaction or to tell whether an address has ever sent anything; for its balance use eth_balance. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `eth_is_contract` (~175 tokens)

Ethereum contract check

Check whether a 0x address on Ethereum is a smart contract or a plain wallet: bytecode size, and whether it is an EIP-1167 minimal proxy and which implementation it points to. Use before sending funds or approving a spender; for a fuller risk verdict use check_counterparty. A malformed address is rejected with 400, uncharged. Example: address=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `eth_logs` (~224 tokens)

Ethereum recent event logs

Recent contract event logs on Ethereum (eth_getLogs): the events a contract emitted over the last N blocks (1-1,000, default 50), optionally filtered by topic0 (the 0x 32-byte event signature hash). Returns up to 100 logs with block, transaction hash and topics. Use to watch transfers or contract events; for one transaction's outcome use eth_receipt. Example: address=0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x contract address
- `blocks` (integer): How many recent blocks to scan (1-1000, default 50)
- `topic0` (string): Optional 0x event signature hash to filter by

### `eth_token_transfers` (~268 tokens)

Ethereum wallet token transfers

List a wallet's recent transfers of one ERC-20 token (default USDC) on Ethereum, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use eth_token_balance. Malformed addresses are rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `blocks` (integer): How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 6.7 hours on Ethereum)
- `token` (string): Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)

### `arb_balance` (~178 tokens)

Arbitrum One native balance

Native ETH balance (eth_getBalance) of any 0x wallet address on Arbitrum One at the latest block, in wei and in ETH. Use to check whether a wallet can pay gas or a transfer; for ERC-20 tokens use arb_token_balance, for all holdings at once use wallet_portfolio. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet or contract address

### `arb_token_balance` (~205 tokens)

Arbitrum One ERC-20 balance

ERC-20 token balance of a wallet on Arbitrum One (USDC, USDT, WETH or any token, via balanceOf): raw amount, decimals, symbol and the human-readable amount, live from the token contract. Use to check stablecoin or token holdings before a transfer or trade; for the native coin use arb_balance. Both inputs are 0x addresses (40 hex characters); no contract returns 404 and a non-ERC-20 contract 422, both uncharged. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `token` (string, required): Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address

### `arb_token_info` (~205 tokens)

Arbitrum One ERC-20 token info

Look up the name, symbol, decimals and total supply of an ERC-20 token contract on Arbitrum One, live from the contract. Use to identify an unknown token address or to format raw amounts; for a holder's balance use arb_token_balance. Input is a ticker (USDC, WETH…) or the token's 0x contract address; an address that is not an ERC-20 contract returns 422, uncharged. Example: token=0xaf88d065e77c8cC2239327C5EDb3A432268e5831. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `token` (string, required): Token: a ticker such as USDC or WETH, or the 0x ERC-20 contract address

### `arb_block` (~145 tokens)

Arbitrum One block

Latest block number and block details on Arbitrum One, or any block by decimal number: hash, timestamp, transaction count, gas used and limit, base fee in gwei and producer. Use for timestamps and confirmation counts; for current fees use arb_gas. A block that does not exist yet returns 404, uncharged. Example: number=latest. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `number` (string): Block number, or 'latest' (default)

### `arb_gas` (~171 tokens)

Arbitrum One gas price

Current gas price on Arbitrum One (eth_gasPrice): gas price, base fee and suggested priority fee in gwei, plus what a plain ETH transfer (21,000 gas) costs right now. Takes no input. Use before sending a transaction or to decide whether to wait; for the fee a past transaction actually paid use arb_receipt. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

### `arb_tx` (~201 tokens)

Arbitrum One transaction

Look up an Arbitrum One transaction by hash: sender, recipient, value in ETH, nonce, gas limit, the 4-byte function selector and its block. Use to see what was sent or whether it exists; for success or failure and fees paid use arb_receipt, for emitted events arb_logs. Input is a 0x-prefixed 64-hex hash; an unknown hash returns 404, uncharged. Example: hash=0xf03682db039f7b1b72ddf4d17572738f142cf63ecb36c90afa570430ea9774c4. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `arb_receipt` (~199 tokens)

Arbitrum One transaction receipt

Transaction receipt on Arbitrum One (eth_getTransactionReceipt): success or reverted, gas used, effective gas price, fee paid in ETH, number of event logs and any contract created. Use to confirm a payment or call went through; for sender, value and calldata use arb_tx. Input is a 0x-prefixed 64-hex hash; a pending or unknown hash returns 404, uncharged. Example: hash=0xf03682db039f7b1b72ddf4d17572738f142cf63ecb36c90afa570430ea9774c4. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `arb_nonce` (~161 tokens)

Arbitrum One account nonce

Read the transaction count (nonce) of a 0x address on Arbitrum One, both confirmed and including pending transactions. Use to build the next transaction or to tell whether an address has ever sent anything; for its balance use arb_balance. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `arb_is_contract` (~172 tokens)

Arbitrum One contract check

Check whether a 0x address on Arbitrum One is a smart contract or a plain wallet: bytecode size, and whether it is an EIP-1167 minimal proxy and which implementation it points to. Use before sending funds or approving a spender; for a fuller risk verdict use check_counterparty. A malformed address is rejected with 400, uncharged. Example: address=0xaf88d065e77c8cC2239327C5EDb3A432268e5831. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `arb_logs` (~221 tokens)

Arbitrum One recent event logs

Recent contract event logs on Arbitrum One (eth_getLogs): the events a contract emitted over the last N blocks (1-1,000, default 50), optionally filtered by topic0 (the 0x 32-byte event signature hash). Returns up to 100 logs with block, transaction hash and topics. Use to watch transfers or contract events; for one transaction's outcome use arb_receipt. Example: address=0xaf88d065e77c8cC2239327C5EDb3A432268e5831. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x contract address
- `blocks` (integer): How many recent blocks to scan (1-1000, default 50)
- `topic0` (string): Optional 0x event signature hash to filter by

### `arb_token_transfers` (~272 tokens)

Arbitrum One wallet token transfers

List a wallet's recent transfers of one ERC-20 token (default USDC) on Arbitrum One, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use arb_token_balance. Malformed addresses are rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `blocks` (integer): How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 8 minutes on Arbitrum One)
- `token` (string): Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)

### `op_balance` (~176 tokens)

Optimism native balance

Native ETH balance (eth_getBalance) of any 0x wallet address on Optimism at the latest block, in wei and in ETH. Use to check whether a wallet can pay gas or a transfer; for ERC-20 tokens use op_token_balance, for all holdings at once use wallet_portfolio. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet or contract address

### `op_token_balance` (~203 tokens)

Optimism ERC-20 balance

ERC-20 token balance of a wallet on Optimism (USDC, USDT, WETH or any token, via balanceOf): raw amount, decimals, symbol and the human-readable amount, live from the token contract. Use to check stablecoin or token holdings before a transfer or trade; for the native coin use op_balance. Both inputs are 0x addresses (40 hex characters); no contract returns 404 and a non-ERC-20 contract 422, both uncharged. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `token` (string, required): Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address

### `op_token_info` (~204 tokens)

Optimism ERC-20 token info

Look up the name, symbol, decimals and total supply of an ERC-20 token contract on Optimism, live from the contract. Use to identify an unknown token address or to format raw amounts; for a holder's balance use op_token_balance. Input is a ticker (USDC, WETH…) or the token's 0x contract address; an address that is not an ERC-20 contract returns 422, uncharged. Example: token=0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `token` (string, required): Token: a ticker such as USDC or WETH, or the 0x ERC-20 contract address

### `op_block` (~143 tokens)

Optimism block

Latest block number and block details on Optimism, or any block by decimal number: hash, timestamp, transaction count, gas used and limit, base fee in gwei and producer. Use for timestamps and confirmation counts; for current fees use op_gas. A block that does not exist yet returns 404, uncharged. Example: number=latest. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `number` (string): Block number, or 'latest' (default)

### `op_gas` (~169 tokens)

Optimism gas price

Current gas price on Optimism (eth_gasPrice): gas price, base fee and suggested priority fee in gwei, plus what a plain ETH transfer (21,000 gas) costs right now. Takes no input. Use before sending a transaction or to decide whether to wait; for the fee a past transaction actually paid use op_receipt. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

### `op_tx` (~203 tokens)

Optimism transaction

Look up an Optimism transaction by hash: sender, recipient, value in ETH, nonce, gas limit, the 4-byte function selector and its block. Use to see what was sent or whether it exists; for success or failure and fees paid use op_receipt, for emitted events op_logs. Input is a 0x-prefixed 64-hex hash; an unknown hash returns 404, uncharged. Example: hash=0x721f3e9a996da49e2a8929bd2dd42e0f51344c11d7ca7bc3328fda349cdfae89. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `op_receipt` (~201 tokens)

Optimism transaction receipt

Transaction receipt on Optimism (eth_getTransactionReceipt): success or reverted, gas used, effective gas price, fee paid in ETH, number of event logs and any contract created. Use to confirm a payment or call went through; for sender, value and calldata use op_tx. Input is a 0x-prefixed 64-hex hash; a pending or unknown hash returns 404, uncharged. Example: hash=0x721f3e9a996da49e2a8929bd2dd42e0f51344c11d7ca7bc3328fda349cdfae89. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `op_nonce` (~159 tokens)

Optimism account nonce

Read the transaction count (nonce) of a 0x address on Optimism, both confirmed and including pending transactions. Use to build the next transaction or to tell whether an address has ever sent anything; for its balance use op_balance. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `op_is_contract` (~171 tokens)

Optimism contract check

Check whether a 0x address on Optimism is a smart contract or a plain wallet: bytecode size, and whether it is an EIP-1167 minimal proxy and which implementation it points to. Use before sending funds or approving a spender; for a fuller risk verdict use check_counterparty. A malformed address is rejected with 400, uncharged. Example: address=0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `op_logs` (~220 tokens)

Optimism recent event logs

Recent contract event logs on Optimism (eth_getLogs): the events a contract emitted over the last N blocks (1-1,000, default 50), optionally filtered by topic0 (the 0x 32-byte event signature hash). Returns up to 100 logs with block, transaction hash and topics. Use to watch transfers or contract events; for one transaction's outcome use op_receipt. Example: address=0x0b2C639c533813f4Aa9D7837CAf62653d097Ff85. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x contract address
- `blocks` (integer): How many recent blocks to scan (1-1000, default 50)
- `topic0` (string): Optional 0x event signature hash to filter by

### `op_token_transfers` (~268 tokens)

Optimism wallet token transfers

List a wallet's recent transfers of one ERC-20 token (default USDC) on Optimism, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use op_token_balance. Malformed addresses are rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `blocks` (integer): How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 67 minutes on Optimism)
- `token` (string): Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)

### `polygon_balance` (~177 tokens)

Polygon PoS native balance

Native POL balance (eth_getBalance) of any 0x wallet address on Polygon PoS at the latest block, in wei and in POL. Use to check whether a wallet can pay gas or a transfer; for ERC-20 tokens use polygon_token_balance, for all holdings at once use wallet_portfolio. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet or contract address

### `polygon_token_balance` (~204 tokens)

Polygon PoS ERC-20 balance

ERC-20 token balance of a wallet on Polygon PoS (USDC, USDT, WETH or any token, via balanceOf): raw amount, decimals, symbol and the human-readable amount, live from the token contract. Use to check stablecoin or token holdings before a transfer or trade; for the native coin use polygon_balance. Both inputs are 0x addresses (40 hex characters); no contract returns 404 and a non-ERC-20 contract 422, both uncharged. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `token` (string, required): Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address

### `polygon_token_info` (~207 tokens)

Polygon PoS ERC-20 token info

Look up the name, symbol, decimals and total supply of an ERC-20 token contract on Polygon PoS, live from the contract. Use to identify an unknown token address or to format raw amounts; for a holder's balance use polygon_token_balance. Input is a ticker (USDC, WETH…) or the token's 0x contract address; an address that is not an ERC-20 contract returns 422, uncharged. Example: token=0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `token` (string, required): Token: a ticker such as USDC or WETH, or the 0x ERC-20 contract address

### `polygon_block` (~144 tokens)

Polygon PoS block

Latest block number and block details on Polygon PoS, or any block by decimal number: hash, timestamp, transaction count, gas used and limit, base fee in gwei and producer. Use for timestamps and confirmation counts; for current fees use polygon_gas. A block that does not exist yet returns 404, uncharged. Example: number=latest. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `number` (string): Block number, or 'latest' (default)

### `polygon_gas` (~170 tokens)

Polygon PoS gas price

Current gas price on Polygon PoS (eth_gasPrice): gas price, base fee and suggested priority fee in gwei, plus what a plain POL transfer (21,000 gas) costs right now. Takes no input. Use before sending a transaction or to decide whether to wait; for the fee a past transaction actually paid use polygon_receipt. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

### `polygon_tx` (~204 tokens)

Polygon PoS transaction

Look up a Polygon PoS transaction by hash: sender, recipient, value in POL, nonce, gas limit, the 4-byte function selector and its block. Use to see what was sent or whether it exists; for success or failure and fees paid use polygon_receipt, for emitted events polygon_logs. Input is a 0x-prefixed 64-hex hash; an unknown hash returns 404, uncharged. Example: hash=0x23e86c30c46638b2e9798692fe89327a66aa8569a5d4a566125f655aeb8f80c7. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `polygon_receipt` (~202 tokens)

Polygon PoS transaction receipt

Transaction receipt on Polygon PoS (eth_getTransactionReceipt): success or reverted, gas used, effective gas price, fee paid in POL, number of event logs and any contract created. Use to confirm a payment or call went through; for sender, value and calldata use polygon_tx. Input is a 0x-prefixed 64-hex hash; a pending or unknown hash returns 404, uncharged. Example: hash=0x23e86c30c46638b2e9798692fe89327a66aa8569a5d4a566125f655aeb8f80c7. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `hash` (string, required): 0x-prefixed transaction hash (64 hex characters)

### `polygon_nonce` (~160 tokens)

Polygon PoS account nonce

Read the transaction count (nonce) of a 0x address on Polygon PoS, both confirmed and including pending transactions. Use to build the next transaction or to tell whether an address has ever sent anything; for its balance use polygon_balance. A malformed address is rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `polygon_is_contract` (~174 tokens)

Polygon PoS contract check

Check whether a 0x address on Polygon PoS is a smart contract or a plain wallet: bytecode size, and whether it is an EIP-1167 minimal proxy and which implementation it points to. Use before sending funds or approving a spender; for a fuller risk verdict use check_counterparty. A malformed address is rejected with 400, uncharged. Example: address=0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x address

### `polygon_logs` (~223 tokens)

Polygon PoS recent event logs

Recent contract event logs on Polygon PoS (eth_getLogs): the events a contract emitted over the last N blocks (1-1,000, default 50), optionally filtered by topic0 (the 0x 32-byte event signature hash). Returns up to 100 logs with block, transaction hash and topics. Use to watch transfers or contract events; for one transaction's outcome use polygon_receipt. Example: address=0x3c499c542cEF5E3811e1192ce70d8cC03d5c3359. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x contract address
- `blocks` (integer): How many recent blocks to scan (1-1000, default 50)
- `topic0` (string): Optional 0x event signature hash to filter by

### `polygon_token_transfers` (~270 tokens)

Polygon PoS wallet token transfers

List a wallet's recent transfers of one ERC-20 token (default USDC) on Polygon PoS, in and out, over the last N blocks (1-2,000, default 1,000): direction, counterparty, amount and transaction, newest first, up to 50. Use to confirm a payment arrived or see what was sent; for the current balance use polygon_token_balance. Malformed addresses are rejected with 400, uncharged. Example: address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `address` (string, required): 0x wallet address
- `blocks` (integer): How many recent blocks to scan (1-2000, default 1000; 2,000 blocks is about 67 minutes on Polygon PoS)
- `token` (string): Token: a ticker such as USDT or WETH, or the 0x ERC-20 contract (default: USDC on this network)

### `keccak` (~130 tokens)

Keccak-256 hash

Keccak-256 hash (the Ethereum hash) of text or of 0x hex bytes, as used for function selectors, event topics and storage slots. Use when building or decoding EVM calls. Example: text=transfer(address,uint256). Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `text` (string, required): Text, or 0x-prefixed hex bytes, up to 10,000 characters

### `network` (~142 tokens)

Base network and USDC facts

Reference facts for paying and reading on Base mainnet: chain id, native USDC contract and decimals, block explorer and public RPC URLs, and the x402 network identifier. Use to configure an x402 or Base client. Price $0.01/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only and changes nothing; each call is charged, so repeats are not free.

Input parameters:

- `only` (string): Optional: comma-separated top-level result keys to keep, for a smaller answer (for example only=price,symbol); unknown keys are ignored and an empty match returns the full result

## Diagnostics

Captured diagnostic sections: TLS, DNSSEC, Authorisation, Transports. The full working is on the page: https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain#diagnostics

## Score history

- 2026-10-23: 70
- 2026-10-22: 70
- 2026-10-21: 69
- 2026-10-20: 69
- 2026-10-19: 69

## Common questions

### What is the Agent Data Tools: Chain data MCP server?

Agent Data Tools: Chain data is an MCP server listed in the public MCP registry as io.github.Nutshell2000/agent-data-tools-chain. 64 tools: balances, blocks, gas, txs and logs on 5 EVM chains, plus Bitcoin. 25 free calls. This page covers its hosted endpoint (https://agent-data-tools.revmesh2074.workers.dev/mcp/chain). Its publisher has verified ownership with us.

### Is the Agent Data Tools: Chain data MCP server safe to use?

Agent Data Tools: Chain data scores 70 out of 100 on VerifyMCP. That is a record of what we were able to check automatically, not an endorsement. The category breakdown on this page shows every signal behind the number, including the ones we could not confirm.

### What tools does the Agent Data Tools: Chain data MCP server expose?

Agent Data Tools: Chain data exposes 64 tools: wallet_balances, btc_fees, eth_balance, eth_gas, base_gas, and 59 more. Their descriptions and schemas cost roughly 12,087 tokens of context every time the server is loaded.

### Does the Agent Data Tools: Chain data MCP server require authentication?

No. We connected to Agent Data Tools: Chain data without credentials and it answered, so anything it exposes is reachable by anyone who knows the address.

### Is the Agent Data Tools: Chain data MCP server still maintained?

Agent Data Tools: Chain data is still listed as active in the MCP registry. We last reached this channel on 23 October 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.

## Links

- Remote endpoint: https://agent-data-tools.revmesh2074.workers.dev/mcp/chain
- Repository: https://github.com/Nutshell2000/agent-data-tools
- Website: https://agent-data-tools.revmesh2074.workers.dev/
- Changelog RSS feed: https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain.xml
- Changelog JSON feed: https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain.json
- HTML version of this page: https://verifymcp.io/servers/nutshell2000-agent-data-tools-chain/mcp-chain
