Crypto Data & Market Analysis Agent — A2A API
Pay-per-call market intelligence for AI agents: real-time crypto prices, funding rates, open interest, on-chain flows, macro indicators — plus LLM-synthesized structured analysis. Bearer auth, credit metering, top-up in USDC on Base L2. No subscription, no KYC.
Machine-readable discovery: /.well-known/agent-card.json
Quickstart (60 seconds)
1. Register — no admin approval, the key is shown once. New accounts start with 5 free credits.
curl -X POST https://asistent-crypto.vercel.app/api/a2a/register \
-H "Content-Type: application/json" \
-d '{"name":"my-trading-agent"}'
# → {"ok":true,"agent":{...,"credits":5},"api_key":"agt_..."} # save the key now2. Call a tool directly (no LLM in the loop, fast):
curl -X POST https://asistent-crypto.vercel.app/api/a2a/query \
-H "Authorization: Bearer agt_..." \
-H "Content-Type: application/json" \
-d '{"tool":"get_fear_greed","input":{},"request_id":"req-001"}'3. Or ask for a synthesized analysis (the agent picks tools, runs them, returns structured JSON):
curl -X POST https://asistent-crypto.vercel.app/api/a2a/analyze \
-H "Authorization: Bearer agt_..." \
-H "Content-Type: application/json" \
-d '{"question":"Is BTC funding overheated right now?","request_id":"req-002"}'Pricing
1 USDC = 50 credits (1 credit = $0.02). Failed tool calls are not charged. Analysis is only charged when it returns valid structured JSON.
| Tool | What it returns | Credits | USD |
|---|---|---|---|
| get_crypto_market | Spot prices, market caps, 24h volumes (top coins) | 1 | $0.02 |
| get_fear_greed | Crypto Fear & Greed Index, current + history | 1 | $0.02 |
| get_derivatives | Funding + OI for one coin, split by venue | 2 | $0.04 |
| get_derivatives_aggregate | Funding + OI for many coins, totals only | 2 | $0.04 |
| get_macro_rates | Fed funds, Treasury yields, 2s10s curve, CPI, VIX, M2 | 2 | $0.04 |
| get_market_quotes | S&P 500, Nasdaq and gold quotes | 1 | $0.02 |
| get_economic_calendar | Upcoming macro events (FOMC, CPI...) | 1 | $0.02 |
| get_crypto_news | Latest crypto headlines (summarized) | 1 | $0.02 |
| get_defi_overview | DeFi TVL and flows (chain-level) | 2 | $0.04 |
| get_btc_network | Bitcoin network stats (hashrate, mempool...) | 2 | $0.04 |
| get_eth_address | Ethereum address activity lookup | 3 | $0.06 |
| get_eth_whale_flows | Large ETH transfers / whale flow detection | 3 | $0.06 |
| get_market_dominance | BTC / ETH / USDT market dominance | 1 | $0.02 |
| get_market_history | Percentiles for funding, OI and Fear & Greed over a window | 1 | $0.02 |
| get_implied_volatility | Options-implied volatility (DVOL) + expected move | 2 | $0.04 |
| get_execution_cost | Order book depth + slippage at size | 3 | $0.06 |
| get_market_brief | One-call verdict: stance, drivers, invalidation | 5 | $0.1 |
| /analyze (LLM synthesis) | Structured verdict + confidence + invalidation levels | 5 + tools used | $0.1 + tools |
x402 — pay per call, no account needed
Both paid endpoints are also exposed via the x402 payment protocol (eip155:8453): call them without registering, get a standard 402 with payment requirements, pay in USDC, retry with the payment header. Payment settles only on successful responses — failed calls are free by protocol.
| Endpoint | Price | What it returns |
|---|---|---|
| POST /api/x402/query | $0.05 | Any one of the data tools, selected by name in the body. |
| POST /api/x402/analyze | $0.25 | AI-synthesized market read over several tools at once. |
| POST /api/x402/data/funding-oi | $0.01 | Perpetual funding rate and open interest for up to 10 coins in a single call, across Binance, Bybit, OKX and Hyperliquid. |
| POST /api/x402/data/funding-by-venue | $0.01 | Funding rate and open interest for one coin, broken down venue by venue across Binance, Bybit, OKX and Hyperliquid, using each venue's largest-open-interest perpetual. |
| POST /api/x402/data/brief | $0.01 | The answer, not the inputs. |
| POST /api/x402/data/orderbook-depth | $0.01 | What a trade actually costs before it is placed: live order book depth on Bybit and OKX, walked at your size. |
| POST /api/x402/data/implied-volatility | $0.01 | What the options market expects price to do, not what leverage is doing: the 30-day implied volatility index for BTC and ETH, with its percentile over the last month and the expected move in percent over 1, 7 and 30 days. |
| POST /api/x402/data/market-history | $0.01 | Whether the current reading is actually high or low, from a series captured every ~10 minutes: funding, open interest, Fear & Greed and BTC dominance, each as current, median, min, max and percentile over the window. |
| POST /api/x402/data/fear-greed | $0.01 | Crypto Fear & Greed Index: current and previous value with classification, plus recent history. |
| POST /api/x402/data/dominance | $0.01 | BTC, ETH and USDT dominance as a share of total crypto market cap — the regime filter to check before sizing any altcoin position. |
| POST /api/x402/data/whale-flows | $0.01 | Large ETH transfers (>100 ETH) to and from known exchange wallets in the last 2 hours. |
| POST /api/x402/data/macro-rates | $0.01 | The macro regime that drives crypto, delivered as signals rather than raw levels: the 2s10s yield curve spread with its direction and an inverted flag, Fed funds, 2Y and 10Y yields, CPI year-over-year, the broad dollar index, VIX and M2 — each with its previous reading, so direction comes free. |
| POST /api/x402/data/economic-calendar | $0.01 | Scheduled macro catalysts ahead — FOMC, CPI, PCE, Non-Farm Payrolls, GDP, Retail Sales — from the official US release calendar. |
| POST /api/x402/data/prices | $0.01 | Spot price, market cap, 24h volume and 24h change for any coins by id (bitcoin, ethereum, solana and thousands more), in any quote currency. |
| POST /api/x402/data/defi-tvl | $0.01 | Total value locked across DeFi, the top chains by TVL, and aggregate stablecoin market cap. |
| POST /api/x402/data/btc-network | $0.01 | Bitcoin network health: hashrate, difficulty, transaction count, estimated volume, miner revenue and the largest recent mempool transactions. |
| POST /api/x402/data/tradfi-quotes | $0.01 | S&P 500, gold and Nasdaq 100 quotes as the traditional-market leg of a crypto read. |
| POST /api/x402/data/address | $0.01 | Ethereum address activity: ETH balance plus recent large transfers in and out. |
| POST /api/x402/data/news | $0.01 | Recent crypto headlines for narrative context and catalysts — the qualitative layer that explains why funding moved when no macro print did. |
The single-tool endpoints take the tool input directly as the JSON body — no wrapper. Full request and response schemas are in /openapi.json. Discoverable via the x402 Bazaar.
Use via MCP (Claude Desktop, Cursor, Cline)
The 14 market-data tools are also a free, keyless remote MCP server. Point any MCP client at the endpoint below and the tools appear with live data. Rate-limited per IP.
Top-up — USDC on Base
# 1. Get the deposit address + current rate
curl https://asistent-crypto.vercel.app/api/a2a/topup/address -H "Authorization: Bearer agt_..."
# 2. Send USDC on Base L2 to that address (any amount)
# 3. Claim your transaction — verified on-chain, credited atomically
curl -X POST https://asistent-crypto.vercel.app/api/a2a/topup/confirm \
-H "Authorization: Bearer agt_..." \
-H "Content-Type: application/json" \
-d '{"tx_hash":"0x..."}'Each tx hash can be claimed once (double-crediting is impossible). When your balance runs out, paid endpoints return 402 with these same top-up instructions in the body.
Endpoints & limits
| Endpoint | Method | Auth | Purpose |
|---|---|---|---|
| /api/a2a/register | POST | public | create account → api_key (shown once) |
| /api/a2a/tools | GET | public | tool catalog + per-call cost |
| /api/a2a/query | POST | Bearer | direct tool execution (no LLM) |
| /api/a2a/analyze | POST | Bearer | LLM synthesis → structured JSON |
| /api/a2a/tasks | POST | Bearer | synchronous task wrapper {type, payload} |
| /api/a2a/balance · /usage | GET | Bearer | current credits · your usage log |
| /api/a2a/topup/address · /confirm | GET · POST | Bearer | deposit info · claim tx → credits |
Rate limit: 60 requests/hour per agent (429 + Retry-After). Client-supplied request_id is idempotent — a duplicate returns 409 instead of double-charging. Insufficient balance → 402 with top-up instructions.