# EVM Wallet Portfolio Totals

> EVM Wallet Portfolio Totals is a paid API for AI agents from wallet-portfolio-history-mcp.mtree.workers.dev, paid per call via x402, $0.2/call, status unknown (last checked 2026-09-15).

Returns native balance, curated ERC-20 token totals, freshness metadata, provenance details, and risk flags for an EVM wallet address to support pre-routing fund diligence.

## Facts

- Endpoint: POST https://wallet-portfolio-history-mcp.mtree.workers.dev/tools/portfolio_totals
- Price: $0.2/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/evm-wallet-portfolio-totals-d28702ee
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_vpnm4QBO0_rTRkTv6cXIH

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability evm-wallet-portfolio-totals-d28702ee -d '<json body>'
```

Example prompt: Before I route 50 USDC to wallet 0xAbC123...def on Base, can you pull its native balance, curated token totals, freshness, and any risk flags so I know it's safe to proceed?

## When to prefer this

Use this endpoint when an AI agent needs to perform pre-routing wallet diligence on an EVM address — specifically when you need a combined view of native balance, token holdings, freshness, and risk flags in a single call. Prefer this over raw RPC calls when curated aggregation, provenance metadata, and risk context are needed together. Best suited for Base network wallets. Pairs well with sibling endpoints for deeper risk scoring or DeFi position analysis.

## Known failure modes

- Invalid or malformed wallet address returns a 400 error
- Unsupported chain/network returns an error or empty result
- Stale data if the D1 snapshot has not refreshed recently — check freshness field
- Payment not processed (x402 flow failure) results in 402 response
- Rate limiting or upstream data provider outage returns 5xx error

## How this service works

Hosted wallet portfolio totals for EVM agents: native balance, curated token totals, freshness, provenance, and risk flags before routing funds. Price 0.20 USDC on Base via x402. Demo: https://wallet-portfolio-history-mcp.mtree.workers.dev/demo/tools/portfolio_totals. Contact: https://wallet-portfolio-history-mcp.mtree.workers.dev/contact.

## Output

Returns an aggregated portfolio snapshot for the queried EVM wallet including: native ETH/gas-token balance, curated ERC-20 token totals with USD values, data freshness timestamp, provenance sources (e.g. Blockscout), and risk flags that may indicate suspicious activity or unusual holdings — suitable for pre-routing diligence.

## Example request

```json
{
 "input": {
  "body": {
   "chain": "ethereum",
   "limit": 10,
   "address": "0x1234567890123456789012345678901234567890",
   "refresh": false
  },
  "type": "http",
  "method": "POST",
  "bodyType": "json"
 }
}
```

## Request schema (JSON Schema)

```json
{
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "type": "object",
 "properties": {
  "input": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string",
     "const": "http"
    },
    "method": {
     "type": "string",
     "enum": [
      "POST"
     ]
    },
    "bodyType": {
     "type": "string",
     "enum": [
      "json",
      "form-data",
      "text"
     ]
    },
    "body": {
     "type": "object",
     "properties": {
      "address": {
       "type": "string",
       "pattern": "^0x[a-fA-F0-9]{40}$"
      },
      "chain": {
       "type": "string",
       "enum": [
        "base",
        "ethereum",
        "arbitrum",
        "optimism",
        "polygon"
       ]
      },
      "limit": {
       "type": "integer",
       "minimum": 1,
       "maximum": 50
      },
      "refresh": {
       "type": "boolean"
      }
     },
     "required": [
      "address"
     ]
    }
   },
   "required": [
    "type",
    "method",
    "bodyType",
    "body"
   ],
   "additionalProperties": false
  },
  "output": {
   "type": "object",
   "properties": {
    "type": {
     "type": "string"
    },
    "example": {
     "type": "object"
    }
   },
   "required": [
    "type"
   ]
  }
 },
 "required": [
  "input"
 ]
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/evm-wallet-portfolio-totals-d28702ee/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from wallet-portfolio-history-mcp.mtree.workers.dev](https://www.zero.xyz/host/wallet-portfolio-history-mcp.mtree.workers.dev/llms.txt)
