Base USDC balance API: ERC-20 token balance of a wallet
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.
When to use it
- Check a wallet's USDC, USDT, WETH or any ERC-20 balance on Base before a transfer or trade
- Pass a ticker or the token's 0x contract address
- Get the raw amount, decimals, symbol and human-readable amount from balanceOf
Inputs
| Name | Type | Description |
|---|---|---|
token (required) | string | Token: a ticker such as USDC, USDT, WETH or DAI, or the 0x ERC-20 contract address |
address (required) | string | 0x wallet address |
Request
Over HTTP, with a card key from /credits:
curl -H "Authorization: Bearer adt_…" "https://tools.funwords.eu/base/token-balance?token=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045"
Or one of your 25 free calls, no key:
curl "https://tools.funwords.eu/base/token-balance?token=0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913&address=0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045&trial=1"
Without a key, the same URL answers 402 Payment Required with x402 and MPP terms, so an agent with a wallet pays per call in USDC (Base, Polygon, Arbitrum or Solana over x402; Base or Tempo over MPP) and retries.
Example result
{
"chain": "Base",
"chainId": 8453,
"token": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"symbol": "USDC",
"decimals": 6,
"address": "0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045",
"raw": "2500000",
"balance": "2.5"
}
From an AI agent (MCP)
Add the MCP server to Claude, Cursor or any MCP client. This tool is base_token_balance, and the first 25 successful calls are free:
https://tools.funwords.eu/mcp
Questions
What if the token address is wrong?
No contract returns 404 and a non-ERC-20 contract 422, both uncharged.
What about ETH itself?
Use base_balance for the native coin.
How do I pay?
Each successful call costs $0.01; failed calls are not charged. The first 25 calls are free. Then pay with card credits (from $1; the key goes in an Authorization header or, for clients that can only fetch a URL, as api_key= in the URL) or per call in USDC over x402 or MPP. No account is needed.