Skip to main content
Glama

Agent Data Tools: Chain data

Base ERC-20 balance

base_token_balance

Read one wallet's balance of one ERC-20 token on Base: 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.003/call via x402 USDC or a card key (/credits), first 25 free; failed calls free. Reads or computes only; not marked read-only because each call is charged.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
tokenYes0x ERC-20 token contract address
addressYes0x wallet address

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.9/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations are provided, yet the description goes well beyond them: it discloses the failure modes and their HTTP codes (404 for no contract, 422 for non-ERC-20), that both are uncharged, the pricing model ($0.003/call via x402 USDC or card key, first 25 free, failed calls free), and directly explains the non-obvious readOnlyHint=false ('not marked read-only because each call is charged'). That is exactly the kind of context annotations cannot carry.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but well front-loaded: purpose and return shape lead, then usage/routing, then input format, then error/pricing behavior. Every clause carries distinct information with no filler or repetition.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description names the returned fields, so an agent knows what it gets back. Error codes, pricing, free tier, and the sibling alternative are all covered, leaving no material gap for invoking this tool correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the baseline is 3, but the description adds a real constraint not in the schema: both inputs must be 0x addresses of 40 hex characters. That clarifies format expectations for both required parameters beyond the schema's terse labels.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Read one wallet's balance of one ERC-20 token on Base') and enumerates the returned fields (raw amount, decimals, symbol, human-readable amount). It explicitly distinguishes itself from the sibling base_balance for the native coin, so an agent can route without opening either schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives a concrete use case ('check stablecoin or token holdings before a transfer or trade') and names the alternative for the native-coin case ('for the native coin use base_balance'), which is exactly the routing decision an agent needs.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.