# Cardamom > Cardano address intelligence — freshly ground on-chain data for agents. Cardamom provides structured APIs for querying any Cardano address: wallet statistics, DeFi activity across supported protocols, AI-generated summaries, and conversational Q&A grounded in indexed on-chain data. It also exposes a public leaderboard for ranking indexed wallets by protocol diversity, DeFi activity, fees, total transactions, and open-position value where prices are available. ## Skills (Agent API) Full skills manifest with Claude-compatible tool definitions: - https://cardamom.live/api/skills Human-readable reference: - https://cardamom.live/skills.md ## Protocol Integration Standard How to add a new Cardano protocol adapter: - https://cardamom.live/protocol-standard ## Key Endpoints - POST /api/addresses/search — index an address, return overview + stats - GET /api/addresses/{address} — cached address overview - GET /api/addresses/{address}/stats — wallet statistics snapshot - GET /api/addresses/{address}/activity — paginated DeFi activity (filterable) - GET /api/leaderboard — public leaderboard rankings - POST /api/addresses/{address}/summary — generate AI summary - POST /api/addresses/{address}/chat — ask a question about the address - GET /api/skills/{protocol}?address={addr} — per-protocol skill (auto-indexes) - POST /api/integration-suggestions — request a new protocol integration Supported protocols: sundaeswap, minswap, fluidtoken, indigo, liqwid, dano, surflend Activity pagination is applied after duplicate protocol rows for the same transaction are collapsed. Use `page` and `pageSize` and read `pagination.total` / `pagination.totalPages`. Position data is live where supported; if a protocol position query does not finish, Cardamom may preserve the last known position snapshot and include a warning. Explorer linkouts in the UI use AdaStat, but API JSON is the source of truth. ## Response Format All responses: { data: {}, meta: { requestId, freshness, warnings }, error: null } Error responses: { data: null, meta: { requestId }, error: { code, message } }