Wallet value in USD

Returns JSON with a wallet's USD value on Ethereum and Base in one call: native and major-token balances priced on-chain from Uniswap v3 pools on Base, per-chain totals and the tokens left unpriced.

Use when you need a wallet portfolio value in USD, a wallet net worth or token balances with USD value for a 0x address.

Do not use for Solana wallets, transaction history, NFTs, DeFi positions or long-tail tokens.

Price: 0.005 USDC per call (x402, eip155:8453). Typical response time: 5000 ms (p95).

Call it over HTTP (x402)

POST https://x402-gateway.blackwoodstate8.workers.dev/v1/wallet-value. A request without payment gets 402 Payment Required with the PAYMENT-REQUIRED header; any x402 client signs an EIP-3009 authorization and retries with PAYMENT-SIGNATURE (or X-PAYMENT). Invalid input is answered with 400 and not charged.

curl -i -X POST https://x402-gateway.blackwoodstate8.workers.dev/v1/wallet-value -H 'content-type: application/json' -d '{"address":"0x87DB3C25d1E8E40f8EF240D48a711B0C355CF8Cf","chains":["base"]}'
Pay to0x703aA725EBd995B3F32BB5132Effa8B90FCc2165
Asset0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 (USDC)
Amount5000 atomic units (0.005 USDC)
Authorization window60 s

Call it over MCP

Streamable HTTP at https://x402-gateway.blackwoodstate8.workers.dev/mcp, tool blackwood_wallet_value. Payment goes in _meta["x402/payment"]; without it the tool returns the payment requirements.

Input

FieldTypeMeaning
addressstringWallet address (0x...) on Ethereum and Base, e.g. 0xd8dA6BF26964aF9D7eEd9e03E53415D37aA96045
chains (optional)arrayChains to value (ethereum and base when omitted), e.g. ["base"]

Example:

{
  "address": "0x87DB3C25d1E8E40f8EF240D48a711B0C355CF8Cf",
  "chains": [
    "base"
  ]
}

Output

Real example:

{
  "address": "0x87DB3C25d1E8E40f8EF240D48a711B0C355CF8Cf",
  "totalUsd": 8.47,
  "chains": {
    "ethereum": null,
    "base": 8.47
  },
  "holdings": [
    {
      "chain": "base",
      "symbol": "ETH",
      "contract": null,
      "balance": "0.002360178464231316",
      "priceUsd": 2420.0937,
      "valueUsd": 5.71
    },
    {
      "chain": "base",
      "symbol": "USDC",
      "contract": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
      "balance": "2.756539",
      "priceUsd": 1,
      "valueUsd": 2.76
    }
  ],
  "unpriced": [],
  "errors": {},
  "updatedAt": "2026-10-18T04:14:44.193Z",
  "note": "USD values use the on-chain price of the same asset on Base: its deepest Uniswap v3 pool against USDC or WETH (USDC counts as 1 USD). Ethereum tokens are priced through their Base counterpart (same issuer or canonical bridge); tokens without one, or without a liquid pool, are listed in unpriced and left out of the totals. Balances cover the native coin and a fixed list of major tokens; values are rounded to cents."
}
JSON Schema
{
  "type": "object",
  "properties": {
    "address": {
      "type": "string"
    },
    "totalUsd": {
      "type": "number"
    },
    "chains": {
      "type": "object",
      "properties": {
        "ethereum": {
          "type": [
            "number",
            "null"
          ]
        },
        "base": {
          "type": [
            "number",
            "null"
          ]
        }
      },
      "required": [
        "ethereum",
        "base"
      ],
      "additionalProperties": false
    },
    "holdings": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "chain": {
            "type": "string",
            "enum": [
              "ethereum",
              "base"
            ]
          },
          "symbol": {
            "type": "string"
          },
          "contract": {
            "type": [
              "string",
              "null"
            ]
          },
          "balance": {
            "type": "string"
          },
          "priceUsd": {
            "type": [
              "number",
              "null"
            ]
          },
          "valueUsd": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "chain",
          "symbol",
          "contract",
          "balance",
          "priceUsd",
          "valueUsd"
        ],
        "additionalProperties": false
      }
    },
    "unpriced": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "chain": {
            "type": "string",
            "enum": [
              "ethereum",
              "base"
            ]
          },
          "symbol": {
            "type": "string"
          },
          "reason": {
            "type": "string"
          }
        },
        "required": [
          "chain",
          "symbol",
          "reason"
        ],
        "additionalProperties": false
      }
    },
    "errors": {
      "type": "object",
      "propertyNames": {
        "type": "string"
      },
      "additionalProperties": {
        "type": "string"
      }
    },
    "updatedAt": {
      "type": "string"
    },
    "note": {
      "type": "string"
    },
    "next": {
      "type": "object",
      "properties": {
        "service": {
          "type": "string",
          "description": "Service id of the suggested next paid call"
        },
        "tool": {
          "type": "string",
          "description": "MCP tool name of the same call"
        },
        "method": {
          "type": "string",
          "enum": [
            "GET",
            "POST"
          ]
        },
        "url": {
          "type": "string",
          "description": "Paid route of the next call"
        },
        "useWhen": {
          "type": "string",
          "description": "When the next call is the right one"
        },
        "sample": {
          "type": "string",
          "description": "Free fixed sample of the whole family"
        }
      },
      "required": [
        "service",
        "tool",
        "method",
        "url",
        "useWhen",
        "sample"
      ],
      "additionalProperties": false,
      "description": "Suggested next paid call in the same family (call it in a loop when the task continues)"
    }
  },
  "required": [
    "address",
    "totalUsd",
    "chains",
    "holdings",
    "unpriced",
    "errors",
    "updatedAt",
    "note"
  ],
  "additionalProperties": false
}

More

Free schema and example: GET https://x402-gateway.blackwoodstate8.workers.dev/v1/wallet-value. OpenAPI 3.1 · llms.txt · All services