Skip to main content
Glama

P0: wallet balances and EVM reads

EVM ERC-20 balance

evm_erc20_balance
Read-onlyIdempotent

Use when you need one ERC-20 balance for one wallet: balanceOf, decimals and symbol read in a single multicall on Base, Ethereum, Arbitrum, Polygon or Optimism, with raw units, a decimal amount. Returns the exact paid x402 request for your input (GET /evm/erc20-balance, $0.002 per call), with a link to the full schema; call that URL with an x402 or MPP client to get the data. Bad input is refused before any charge. One token on one chain; for several tokens or chains at once use wallet_balance. With a P0 access key (header Authorization: Bearer p0k_…, buy one at https://x402-bazaar-rank.x402-bazaar-rank-worker.workers.dev/keys/buy?usd=5) this tool makes the paid call itself and returns the data, deducting the listed price.

Input Schema

NameRequiredDescriptionDefault
chainNoChain; default basebase
tokenYesERC-20 contract address
addressYesWallet address (0x + 40 hex)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior3/5

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

Annotations already declare readOnly, idempotent, openWorld and non-destructive, so this is transparently a safe read. The description still adds substantive behavior: pricing ($0.002 per call), validation-before-charge, the two response modes (returns an x402 request vs. executing the call with a bearer key), and the access-key purchase URL. Those additions are meaningful but the dual-mode return behavior is described ambiguously enough that an agent could misread what it actually receives.

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

Conciseness4/5

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

Front-loaded with the use case and dense with decision-relevant facts, with no filler sentences. However it is a single sprawling multi-clause run-on, and the payment/key material is interleaved with the core behavior rather than separated, which costs some readability.

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?

With no output schema, the description still covers what comes back (raw units, decimal amount, symbol/decimals), how payment works, and that invalid input is rejected before charging. For a paid, multi-chain read tool this is enough for an agent to call it confidently.

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

Parameters3/5

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

Schema coverage is 100% and it already documents the chain enum with a default, the token contract pattern, and the wallet address format, so the baseline is 3. The description confirms the one-token/one-chain constraint but adds no new syntax, defaults, or edge-case guidance about the parameters.

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 ERC-20 balanceOf/decimals/symbol for one wallet via multicall), enumerates supported chains, and explicitly distinguishes itself from the sibling wallet_balance for multi-token/multi-chain cases. An agent can route correctly without opening the 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 an explicit trigger ("Use when you need one ERC-20 balance for one wallet"), an explicit exclusion with the named alternative ("for several tokens or chains at once use wallet_balance"), plus the condition that selects the paid-call path (P0 access key) versus the returned x402 request.

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.

Resources