Server definition
- Hash
- sha256:e825b89ac8de8855d35875aeaff4f2cc801b287d1a9b6c6b193db5d1da0aed26
- What it is
- What a remote MCP server returned when asked what it offers: 36 tools
The blob, as servednamed by its sha256
{
"instructions": "Read-only Hyperliquid market data from Ironflow's own nodes: trades, candles, funding, open interest, liquidations, mark prices, market snapshots and wallet analytics for native perps, HIP-3 builder markets and spot. Markets use display symbols such as BTC-PERP or xyz:NVDA-PERP; call list_markets when unsure. For anything the named tools do not cover, call describe_data and then run_query with ClickHouse SQL over the hl.* tables. Keyless use allows 10 requests per minute and 24 hours of history; a free key from https://ironflow.sh/key raises that to 60 per minute and 30 days.",
"tools": [
{
"description": "Start here for any Hyperliquid question the other tools do not answer directly. Returns the SQL tables you can query with run_query (every fill, per-wallet daily totals, wallet behaviour labels, funding, mark and oracle prices, open interest, liquidations, builder-code fills, transfers, vault flows), their columns, how far back each goes, query tips, worked examples and your own limits.",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "describe_data",
"outputSchema": {
"description": "Catalog of the SQL tables run_query can read",
"properties": {
"dialect": {
"description": "SQL dialect and database name"
},
"examples": {
"description": "Worked examples",
"items": {
"description": "One example",
"properties": {
"question": {
"description": "Question"
},
"sql": {
"description": "SQL that answers it"
}
},
"type": "object"
},
"type": "array"
},
"limits": {
"description": "Your tier's limits: history_days, max_execution_seconds, max_rows, budget_seconds_per_hour"
},
"tables": {
"description": "Queryable tables",
"items": {
"description": "One table",
"properties": {
"columns": {
"description": "Columns",
"items": {
"description": "One column",
"properties": {
"description": {
"description": "Meaning"
},
"name": {
"description": "Name"
},
"type": {
"description": "ClickHouse type"
}
},
"type": "object"
},
"type": "array"
},
"data_from": {
"description": "How far back the table goes"
},
"description": {
"description": "What one row is"
},
"name": {
"description": "Table name, e.g. hl.fills"
},
"time_column": {
"description": "Column the history window filters on"
}
},
"type": "object"
},
"type": "array"
},
"tiers": {
"description": "Every tier's limits",
"items": {
"description": "One tier"
},
"type": "array"
},
"tips": {
"description": "Query tips",
"items": {
"description": "One tip"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "OHLCV candles for a Hyperliquid market, computed from tick-level trades.",
"inputSchema": {
"properties": {
"interval": {
"description": "Candle interval (1m, 5m, 15m, 1h, 4h, 1d). Default: 1h",
"enum": [
"1m",
"5m",
"15m",
"1h",
"4h",
"1d"
],
"type": "string"
},
"limit": {
"description": "Number of candles to return (1-500, default 24)",
"type": "number"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_candles",
"outputSchema": {
"description": "OHLCV candles",
"properties": {
"data": {
"description": "OHLCV candles",
"items": {
"description": "One row",
"properties": {
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"close": {
"description": "Close price"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"high": {
"description": "High price"
},
"interval": {
"description": "Candle interval"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"low": {
"description": "Low price"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"open": {
"description": "Open price"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"trade_count": {
"description": "Trades in the candle"
},
"venue": {
"description": "Venue, always hyperliquid"
},
"volume": {
"description": "Volume in base units"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Get the wallet addresses in a specific cohort",
"inputSchema": {
"properties": {
"name": {
"description": "Cohort name (e.g. top_pnl_30d, high_volume_30d, whale_fills, or a custom cohort name)",
"type": "string"
}
},
"required": [
"name"
],
"type": "object"
},
"name": "get_cohort_addresses",
"outputSchema": {
"description": "Wallets in a cohort",
"properties": {
"addresses": {
"description": "Wallets",
"items": {
"description": "One wallet",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"value": {
"description": "The metric the cohort ranks by"
}
},
"type": "object"
},
"type": "array"
},
"fetched_at": {
"description": "Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Wallets whose large orders (at least $10k) on a Hyperliquid market were followed by a price move in their direction within 30 minutes. Returns a lead score in basis points and a hit rate per wallet. Past activity does not predict future results.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of wallets (1-25, default 10)",
"type": "number"
},
"market": {
"description": "Market symbol (e.g. \"BTC-PERP\", \"xyz:SKHX-PERP\")",
"type": "string"
},
"window": {
"description": "Lookback window. Default 30d",
"enum": [
"7d",
"30d"
],
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_early_movers",
"outputSchema": {
"description": "Wallets whose large orders preceded moves",
"properties": {
"formula": {
"description": "How the lead score is computed"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"signals": {
"description": "Wallets",
"items": {
"description": "One wallet",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"cancel_ratio_30d": {
"description": "Share of large orders cancelled without a fill"
},
"events": {
"description": "Scored large orders"
},
"hit_rate": {
"description": "Share of orders followed by a move in their direction"
},
"last_event_ms": {
"description": "Last scored order, Unix milliseconds"
},
"lead_score_bps": {
"description": "Notional-weighted 30-minute forward return, basis points"
},
"notional_usd": {
"description": "Notional of scored orders in USD"
}
},
"type": "object"
},
"type": "array"
},
"window": {
"description": "Lookback window, e.g. \"30d\""
}
},
"type": "object"
}
},
{
"description": "Every fill for one Hyperliquid wallet, optionally for one market, from indexed history: price, size, side, fee and realized PnL. Hyperliquid's own userFills endpoints stop at the 10,000 most recent fills.",
"inputSchema": {
"properties": {
"address": {
"description": "Wallet address (e.g. 0x...)",
"type": "string"
},
"limit": {
"description": "Number of fills (1-100, default 20)",
"type": "number"
},
"market": {
"description": "Optional market filter — native HL (e.g. \"BTC-PERP\") or HIP-3 builder market \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\")",
"type": "string"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_fills",
"outputSchema": {
"description": "Fills for one wallet, newest first",
"properties": {
"data": {
"description": "Fills for one wallet, newest first",
"items": {
"description": "One row",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"block_number": {
"description": "Hyperliquid block height"
},
"direction": {
"description": "e.g. \"Open Long\", \"Close Short\""
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"fee": {
"description": "Fee paid in USD"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_type": {
"description": "perp, spot or prediction"
},
"price": {
"description": "Price in USD"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"side": {
"description": "Fill side, \"buy\" or \"sell\""
},
"size": {
"description": "Size in base units"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Hourly funding rate history for a Hyperliquid perp, including HIP-3 builder perps. A positive rate means longs pay shorts.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of funding rate entries (1-100, default 10)",
"type": "number"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_funding_rates",
"outputSchema": {
"description": "Hourly funding rates",
"properties": {
"data": {
"description": "Hourly funding rates",
"items": {
"description": "One row",
"properties": {
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"rate": {
"description": "Hourly funding rate; positive means longs pay shorts"
},
"sequence": {
"description": "Order of the event within its block"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Funding statistics per time bucket for a Hyperliquid perp: average, minimum, maximum and annualized rate.",
"inputSchema": {
"properties": {
"interval": {
"description": "Time interval (1h, 4h, 8h, 1d, 7d). Default: 1d",
"enum": [
"1h",
"4h",
"8h",
"1d",
"7d"
],
"type": "string"
},
"limit": {
"description": "Number of data points (default 7)",
"type": "number"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\") or HIP-3 builder market \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_funding_stats",
"outputSchema": {
"description": "Funding statistics per time bucket",
"properties": {
"data": {
"description": "Buckets",
"items": {
"description": "One bucket",
"properties": {
"avg_rate": {
"description": "Average hourly rate"
},
"bucket": {
"description": "Bucket start, Unix milliseconds"
},
"cumulative_rate": {
"description": "Sum of hourly rates in the bucket"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"max_rate": {
"description": "Highest hourly rate"
},
"min_rate": {
"description": "Lowest hourly rate"
},
"source": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "Liquidated notional on a Hyperliquid perp bucketed by price: where longs and shorts were wiped out. Needs a Builder or Enterprise key; keyless and free-key calls return 403.",
"inputSchema": {
"properties": {
"bucket_size": {
"description": "Price bucket size (1, 5, 10, 50, 100, 500, 1000, 5000). Default: 100",
"type": "string"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\") or HIP-3 builder market \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_liquidation_levels",
"outputSchema": {
"description": "Liquidated notional by price bucket",
"properties": {
"data": {
"description": "Price buckets",
"items": {
"description": "One bucket",
"properties": {
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "Liquidations across every Hyperliquid market (or one market) over the last N minutes, totalled: count, notional, longs vs shorts liquidated, the top markets and the largest single liquidation. Use it for 'who got liquidated in the last hour?'. Keyless calls can look back 60 minutes, keyed calls up to 240.",
"inputSchema": {
"properties": {
"market": {
"description": "Optional market filter (e.g. \"BTC-PERP\")",
"type": "string"
},
"minutes": {
"description": "Lookback in minutes (default 60, max 240)",
"type": "number"
}
},
"required": [],
"type": "object"
},
"name": "get_liquidation_summary",
"outputSchema": {
"description": "Liquidation totals over the window",
"properties": {
"by_market": {
"description": "Top markets by liquidated notional",
"items": {
"description": "One market",
"properties": {
"count": {
"description": "Liquidations"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"notional_usd": {
"description": "Notional in USD"
}
},
"type": "object"
},
"type": "array"
},
"complete": {
"description": "False when the page cap was hit and totals are a lower bound"
},
"count": {
"description": "Number of liquidations"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"largest": {
"description": "Largest single liquidation, or null when there were none",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"notional_usd": {
"description": "Notional in USD"
},
"price": {
"description": "Price in USD"
},
"side": {
"description": "\"long\" or \"short\""
},
"timestamp": {
"description": "Unix milliseconds"
}
},
"type": "object"
},
"longs_liquidated_usd": {
"description": "Notional of liquidated longs in USD"
},
"market": {
"description": "Market filter, or null for all markets"
},
"notional_usd": {
"description": "Liquidated notional in USD"
},
"shorts_liquidated_usd": {
"description": "Notional of liquidated shorts in USD"
},
"to": {
"description": "Window end, Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Liquidations on a Hyperliquid perp, read from our own nodes: price, size, side and the liquidated wallet. Hyperliquid's public API has no liquidation feed.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of liquidation events (1-100, default 20)",
"type": "number"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_liquidations",
"outputSchema": {
"description": "Liquidations",
"properties": {
"data": {
"description": "Liquidations",
"items": {
"description": "One row",
"properties": {
"address": {
"description": "Liquidated wallet"
},
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"block_number": {
"description": "Hyperliquid block height"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_type": {
"description": "perp, spot or prediction"
},
"price": {
"description": "Price in USD"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"side": {
"description": "The liquidated wallet's fill side: \"sell\" closed a long, \"buy\" closed a short"
},
"size": {
"description": "Size in base units"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Mark price and oracle price series for a Hyperliquid perp.",
"inputSchema": {
"properties": {
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\") or HIP-3 builder market \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_mark_prices",
"outputSchema": {
"description": "Mark price samples",
"properties": {
"data": {
"description": "Mark price samples",
"items": {
"description": "One row",
"properties": {
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"funding_rate": {
"description": "Current hourly funding rate"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"mark_price": {
"description": "Mark price"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"oracle_price": {
"description": "Oracle price"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "The best traders on one Hyperliquid market, ranked by profit factor then win rate, among wallets with at least 5 closed trades there.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of traders (1-50, default 20)",
"type": "number"
},
"market": {
"description": "Market symbol (e.g. \"BTC-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
},
"window": {
"description": "Lookback window. Default 30d",
"enum": [
"7d",
"30d",
"90d"
],
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_market_leaders",
"outputSchema": {
"description": "Best traders on one market",
"properties": {
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"traders": {
"description": "Traders",
"items": {
"description": "One trader",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"avg_notional_usd": {
"description": "Average trade size in USD"
},
"last_trade_ms": {
"description": "Last trade, Unix milliseconds"
},
"profit_factor": {
"description": "Gross profit divided by gross loss"
},
"realized_pnl_usd": {
"description": "Realized PnL in USD"
},
"trades": {
"description": "Closed trades in the window"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
}
},
"type": "object"
},
"type": "array"
},
"window": {
"description": "Lookback window, e.g. \"30d\""
}
},
"type": "object"
}
},
{
"description": "Top wallets on one Hyperliquid market by volume or realized PnL, up to 200 rows.",
"inputSchema": {
"properties": {
"from": {
"description": "Unix ms window start (default 24h ago)",
"type": "number"
},
"limit": {
"description": "Number of rows, max 200, default 25",
"type": "number"
},
"market": {
"description": "Market symbol (e.g. 'BTC-PERP' or 'flx:GAS-PERP')",
"type": "string"
},
"sort_by": {
"description": "Ranking metric",
"enum": [
"volume",
"realized_pnl"
],
"type": "string"
},
"to": {
"description": "Unix ms window end (default now)",
"type": "number"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_market_top_wallets",
"outputSchema": {
"description": "Top wallets on one market",
"properties": {
"data": {
"description": "Wallets",
"items": {
"description": "One wallet",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"fills": {
"description": "Fills in the window"
},
"first_seen_ms": {
"description": "First fill in the window, Unix milliseconds"
},
"last_seen_ms": {
"description": "Last fill in the window, Unix milliseconds"
},
"losses": {
"description": "Losing closing fills"
},
"maker_fills": {
"description": "Fills as maker"
},
"pct_maker": {
"description": "Share of fills as maker, 0 to 1"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"taker_fills": {
"description": "Fills as taker"
},
"volume_usd": {
"description": "Traded notional in USD"
},
"wins": {
"description": "Profitable closing fills"
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"sort_by": {
"description": "Ranking metric"
},
"to": {
"description": "Window end, Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Active Hyperliquid markets ranked in one call: mark price, 24h change, 24h volume, open interest and current hourly funding. Sort by abs_funding for the most extreme funding, abs_change_24h for the biggest movers, or volume (default). Use min_volume_usd to skip illiquid markets. Returns the top 25 unless limit is set.",
"inputSchema": {
"properties": {
"issuer": {
"description": "HIP-3 builder code (e.g. 'xyz'). Omit to include every issuer.",
"type": "string"
},
"limit": {
"description": "Rows to return (1-200, default 25)",
"type": "number"
},
"market_class": {
"description": "Filter to one class",
"enum": [
"perp",
"spot",
"prediction",
"option"
],
"type": "string"
},
"min_volume_usd": {
"description": "Skip markets with less 24h volume than this (USD)",
"type": "number"
},
"order": {
"description": "desc (default) or asc",
"enum": [
"desc",
"asc"
],
"type": "string"
},
"sort_by": {
"description": "Ranking key (default volume). funding_rate is hourly; positive means longs pay shorts.",
"enum": [
"volume",
"open_interest",
"funding",
"abs_funding",
"change_24h",
"abs_change_24h"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_markets_snapshot",
"outputSchema": {
"description": "Markets ranked by the requested key",
"properties": {
"data": {
"description": "Ranked markets",
"items": {
"description": "One market",
"properties": {
"change_24h_pct": {
"description": "24h change as a fraction, e.g. -0.031 for -3.1%"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"funding_rate": {
"description": "Current hourly funding rate"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"mark_24h_ago": {
"description": "Mark price 24h ago"
},
"mark_price": {
"description": "Current mark price"
},
"mark_ts_ms": {
"description": "Mark sample time, Unix milliseconds"
},
"market_class": {
"description": "perp, spot, prediction or option"
},
"market_id": {
"description": "Stable market id"
},
"open_interest_base": {
"description": "Open interest in base units"
},
"open_interest_usd": {
"description": "Open interest in USD"
},
"volume_24h_usd": {
"description": "24h volume in USD"
}
},
"type": "object"
},
"type": "array"
},
"matched": {
"description": "Markets past the volume floor"
},
"order": {
"description": "desc or asc"
},
"returned": {
"description": "Rows in data"
},
"sort_by": {
"description": "Ranking key used"
},
"total_markets": {
"description": "Active markets before filtering"
}
},
"type": "object"
}
},
{
"description": "Latest open interest for a Hyperliquid perp.",
"inputSchema": {
"properties": {
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_open_interest",
"outputSchema": {
"description": "Open interest samples",
"properties": {
"data": {
"description": "Open interest samples",
"items": {
"description": "One row",
"properties": {
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"open_interest": {
"description": "Open interest in base units"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
},
"volume_24h": {
"description": "24h volume in USD"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Every Hyperliquid wallet ranked by realized PnL, biggest losses or volume over a window. Wallets with fewer than 5 fills in the window are left out.",
"inputSchema": {
"properties": {
"from": {
"description": "Unix ms window start (default 30d ago)",
"type": "number"
},
"limit": {
"description": "Number of rows, max 200, default 50",
"type": "number"
},
"sort_by": {
"description": "Ranking metric",
"enum": [
"realized_pnl",
"loss",
"volume"
],
"type": "string"
},
"to": {
"description": "Unix ms window end (default now)",
"type": "number"
}
},
"required": [],
"type": "object"
},
"name": "get_pnl_leaderboard",
"outputSchema": {
"description": "Wallets ranked over the window",
"properties": {
"data": {
"description": "Wallets",
"items": {
"description": "One wallet",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"fills": {
"description": "Fills in the window"
},
"losses": {
"description": "Losing closing fills"
},
"maker_fills": {
"description": "Fills as maker"
},
"markets_count": {
"description": "Markets traded"
},
"max_drawdown_pct": {
"description": "Largest peak-to-trough drop of the PnL curve, 0 to 1"
},
"pct_maker": {
"description": "Share of fills as maker, 0 to 1"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"taker_fills": {
"description": "Fills as taker"
},
"volume_usd": {
"description": "Traded notional in USD"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
},
"wins": {
"description": "Profitable closing fills"
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"sort_by": {
"description": "Ranking metric"
},
"to": {
"description": "Window end, Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Latest mark price of a Hyperliquid market: native perps, HIP-3 builder perps (e.g. xyz:NVDA-PERP) and spot.",
"inputSchema": {
"properties": {
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_price",
"outputSchema": {
"description": "Latest mark price",
"properties": {
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"price": {
"description": "Price in USD"
}
},
"type": "object"
}
},
{
"description": "Latest tick-level trades on a Hyperliquid market from our own nodes: price, size, side and block time. Covers native perps, HIP-3 builder markets, HIP-4 outcomes and spot.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of trades to return (1-100, default 20)",
"type": "number"
},
"market": {
"description": "Market symbol — native HL perp (e.g. \"BTC-PERP\", \"ETH-PERP\") or HIP-3 builder market namespaced as \"<issuer>:<base>-PERP\" (e.g. \"flx:GAS-PERP\", \"xyz:NVDA-PERP\")",
"type": "string"
}
},
"required": [
"market"
],
"type": "object"
},
"name": "get_recent_trades",
"outputSchema": {
"description": "Trades, newest first",
"properties": {
"data": {
"description": "Trades, newest first",
"items": {
"description": "One row",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"block_number": {
"description": "Hyperliquid block height"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"fee": {
"description": "Fee paid in USD"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_type": {
"description": "perp, spot or prediction"
},
"price": {
"description": "Price in USD"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"sequence": {
"description": "Order of the event within its block"
},
"side": {
"description": "Fill side, \"buy\" or \"sell\""
},
"size": {
"description": "Size in base units"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"venue": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Get system status, data freshness, and venue health (unauthenticated)",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "get_status",
"outputSchema": {
"description": "Service status",
"properties": {
"components": {
"description": "data_pipeline, rest_api and streaming health"
},
"platform": {
"description": "Event and market counts"
},
"status": {
"description": "operational, degraded or down"
},
"timestamp": {
"description": "Unix milliseconds"
},
"uptime": {
"description": "Time since the last incident"
},
"venues": {
"description": "Freshness per venue"
}
},
"type": "object"
}
},
{
"description": "Get an uptime / freshness timeline. period: '24h' (default) or '7d' (unauthenticated)",
"inputSchema": {
"properties": {
"period": {
"description": "Lookback window. '24h' (default) or '7d'.",
"enum": [
"24h",
"7d"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_status_history",
"outputSchema": {
"description": "Hourly status timeline",
"properties": {
"period": {
"description": "24h or 7d"
},
"points": {
"description": "Hourly buckets",
"items": {
"description": "One hour",
"properties": {
"fresh_sec": {
"description": "Data age in seconds"
},
"status": {
"description": "Worst status in the hour"
},
"ts": {
"description": "Hour start, Unix milliseconds"
}
},
"type": "object"
},
"type": "array"
},
"uptime_percent": {
"description": "Share of operational hours"
}
},
"type": "object"
}
},
{
"description": "Get rolling-window API + pipeline + synthetic performance metrics (unauthenticated)",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "get_status_metrics",
"outputSchema": {
"description": "Rolling performance metrics",
"properties": {
"api": {
"description": "Latency and error rate"
},
"pipeline": {
"description": "Ingestion latency and throughput"
},
"synthetic": {
"description": "Synthetic probe latencies"
},
"timestamp": {
"description": "Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Hyperliquid traders ranked across all markets by results over 7, 30 or 90 days: win rate, profit factor, realized PnL, max drawdown and best markets. sort=top ranks by realized PnL, lowrisk by smallest max drawdown, new by most recently first seen.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of traders (1-50, default 20)",
"type": "number"
},
"sort": {
"description": "Ranking. Default top",
"enum": [
"top",
"lowrisk",
"new"
],
"type": "string"
},
"window": {
"description": "Lookback window. Default 30d",
"enum": [
"7d",
"30d",
"90d"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_top_traders",
"outputSchema": {
"description": "Traders ranked across all markets",
"properties": {
"aggregate": {
"description": "Totals",
"properties": {
"active_today": {
"description": "Traders active today"
},
"total_pnl_usd": {
"description": "Sum of realized PnL in USD"
},
"trader_count": {
"description": "Traders ranked"
}
},
"type": "object"
},
"sort": {
"description": "Ranking used"
},
"traders": {
"description": "Traders",
"items": {
"description": "One trader",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"avg_notional_usd": {
"description": "Average trade size in USD"
},
"first_trade_ms": {
"description": "First trade, Unix milliseconds"
},
"last_trade_ms": {
"description": "Last trade, Unix milliseconds"
},
"liquidations": {
"description": "Liquidations in the window"
},
"max_drawdown_pct": {
"description": "Largest peak-to-trough drop of the PnL curve, 0 to 1"
},
"profit_factor": {
"description": "Gross profit divided by gross loss"
},
"realized_pnl_usd": {
"description": "Realized PnL in USD"
},
"taker_share": {
"description": "Share of volume as taker, 0 to 1"
},
"top_pairs": {
"description": "Best markets with their win rates"
},
"trades": {
"description": "Closed trades in the window"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
}
},
"type": "object"
},
"type": "array"
},
"window": {
"description": "Lookback window, e.g. \"30d\""
}
},
"type": "object"
}
},
{
"description": "A Hyperliquid wallet's trading record over 7, 30 or 90 days: win rate, profit factor, realized PnL, max drawdown and its best markets.",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"window": {
"description": "Lookback window. Default 30d",
"enum": [
"7d",
"30d",
"90d"
],
"type": "string"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_trader_profile",
"outputSchema": {
"description": "One wallet's trading record",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"liquidation_count": {
"description": "Liquidations in the window"
},
"markets": {
"description": "Best markets, ranked",
"items": {
"description": "One market",
"properties": {
"avg_notional_usd": {
"description": "Average trade size in USD"
},
"last_trade_ms": {
"description": "Last trade, Unix milliseconds"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"profit_factor": {
"description": "Gross profit divided by gross loss"
},
"rank": {
"description": "Rank among the wallet's markets"
},
"realized_pnl_usd": {
"description": "Realized PnL in USD"
},
"trades": {
"description": "Closed trades in the window"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
}
},
"type": "object"
},
"type": "array"
},
"overall": {
"description": "Headline stats",
"properties": {
"first_trade_ms": {
"description": "First trade, Unix milliseconds"
},
"max_drawdown_pct": {
"description": "Largest peak-to-trough drop of the PnL curve, 0 to 1"
},
"profit_factor": {
"description": "Gross profit divided by gross loss"
},
"realized_pnl_usd": {
"description": "Realized PnL in USD"
},
"trades": {
"description": "Closed trades in the window"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
}
},
"type": "object"
},
"trades": {
"description": "Recent round-trip trades"
},
"window": {
"description": "Lookback window, e.g. \"30d\""
}
},
"type": "object"
}
},
{
"description": "Funding a Hyperliquid wallet paid or received, per market per bucket. Positive means received, negative means paid. bucket=1d gives daily totals, 1h the raw hourly payments.",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"bucket": {
"description": "Aggregation bucket; default 1d",
"enum": [
"1h",
"1d",
"raw"
],
"type": "string"
},
"from": {
"description": "Unix ms window start (inclusive)",
"type": "number"
},
"limit": {
"description": "Most recent rows to return (default 200)",
"type": "number"
},
"market": {
"description": "Optional market filter (e.g. BTC-PERP)",
"type": "string"
},
"to": {
"description": "Unix ms window end (exclusive)",
"type": "number"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_funding",
"outputSchema": {
"description": "Funding paid or received per market per bucket",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"bucket": {
"description": "Bucket size"
},
"data": {
"description": "Buckets",
"items": {
"description": "One bucket and market",
"properties": {
"avg_funding_rate": {
"description": "Average hourly rate"
},
"avg_position": {
"description": "Average position size"
},
"bucket_start": {
"description": "Bucket start, Unix milliseconds"
},
"funding_payment": {
"description": "USD; positive received, negative paid"
},
"interval_count": {
"description": "Hourly payments in the bucket"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_class": {
"description": "perp, spot, prediction or option"
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"returned": {
"description": "Rows in data, most recent first"
},
"to": {
"description": "Window end, Unix milliseconds"
},
"total_rows": {
"description": "Rows in the window before the limit"
}
},
"type": "object"
}
},
{
"description": "Vault deposits, withdrawals and transfers for a Hyperliquid wallet. Positive amounts go into the account. Account deposits and withdrawals are recorded only up to 2026-06-06.",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"event_types": {
"description": "Comma-separated type filter (deposit,withdrawal,vault_deposit,vault_withdraw,vault_transfer_in,vault_transfer_out)",
"type": "string"
},
"from": {
"description": "Unix ms window start",
"type": "number"
},
"limit": {
"description": "Max entries, default 1000, cap 10000",
"type": "number"
},
"to": {
"description": "Unix ms window end",
"type": "number"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_ledger",
"outputSchema": {
"description": "Vault and transfer ledger",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"data": {
"description": "Ledger entries",
"items": {
"description": "One entry",
"properties": {
"amount": {
"description": "USD; positive into the account"
},
"timestamp": {
"description": "Unix milliseconds"
},
"type": {
"description": "Event type"
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"to": {
"description": "Window end, Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Maker vs taker breakdown of a Hyperliquid wallet's fills per market: volume, fees and rebates. A high maker share with negative maker fees marks a market maker.",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"from": {
"description": "Unix ms window start",
"type": "number"
},
"market": {
"description": "Optional market filter",
"type": "string"
},
"to": {
"description": "Unix ms window end",
"type": "number"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_maker_taker",
"outputSchema": {
"description": "Maker vs taker breakdown",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"data": {
"description": "Per market",
"items": {
"description": "One market",
"properties": {
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"to": {
"description": "Window end, Unix milliseconds"
},
"total": {
"description": "All markets",
"properties": {
"maker_fee": {
"description": "Maker fees in USD; negative means rebates"
},
"maker_fills": {
"description": "Fills as maker"
},
"maker_notional": {
"description": "Maker notional in USD"
},
"pct_maker": {
"description": "Share of fills as maker, 0 to 1"
},
"taker_fee": {
"description": "Taker fees in USD"
},
"taker_fills": {
"description": "Fills as taker"
},
"taker_notional": {
"description": "Taker notional in USD"
},
"total_fills": {
"description": "All fills"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Realized PnL curve of a Hyperliquid wallet over time, bucketed (for example hourly or daily).",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"bucket_ms": {
"description": "Bucket size in ms (e.g. 3600000 for 1h)",
"type": "number"
},
"from": {
"description": "Unix ms window start",
"type": "number"
},
"to": {
"description": "Unix ms window end (default now)",
"type": "number"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_pnl_series",
"outputSchema": {
"description": "Realized PnL per bucket",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"bucket": {
"description": "Bucket size"
},
"data": {
"description": "Buckets",
"items": {
"description": "One bucket",
"properties": {
"fees_usd": {
"description": "Fees in USD"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"ts": {
"description": "Bucket start, Unix milliseconds"
}
},
"type": "object"
},
"type": "array"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"to": {
"description": "Window end, Unix milliseconds"
}
},
"type": "object"
}
},
{
"description": "Open positions and unrealized PnL for a Hyperliquid wallet right now, across native and HIP-3 perps. Use it for questions like 'is this wallet long or short?'",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_state",
"outputSchema": {
"description": "Open positions right now",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"as_of_ts": {
"description": "Snapshot time, Unix milliseconds"
},
"asset_positions": {
"description": "Open positions",
"items": {
"description": "Open position",
"properties": {
"entry_price": {
"description": "Average entry price"
},
"leverage": {
"description": "Leverage"
},
"leverage_type": {
"description": "cross or isolated"
},
"mark_price": {
"description": "Current mark price"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_class": {
"description": "perp, spot, prediction or option"
},
"position_value": {
"description": "Position value in USD"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"return_on_equity": {
"description": "Unrealized PnL divided by margin"
},
"size": {
"description": "Signed size: positive long, negative short"
},
"unrealized_pnl": {
"description": "Unrealized PnL in USD"
}
},
"type": "object"
},
"type": "array"
},
"margin_summary": {
"description": "Account totals",
"properties": {
"open_markets_count": {
"description": "Markets with an open position"
},
"total_position_value": {
"description": "Sum of position values in USD"
},
"total_realized_pnl": {
"description": "Sum of realized PnL in USD"
},
"total_unrealized_pnl": {
"description": "Sum of unrealized PnL in USD"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "One Hyperliquid wallet's stats over a window: volume, realized PnL, fill count, win rate, maker share and markets traded.",
"inputSchema": {
"properties": {
"address": {
"description": "0x-prefixed 20-byte hex address",
"type": "string"
},
"from": {
"description": "Unix ms window start (default 24h ago)",
"type": "number"
},
"to": {
"description": "Unix ms window end (default now)",
"type": "number"
}
},
"required": [
"address"
],
"type": "object"
},
"name": "get_user_summary",
"outputSchema": {
"description": "One wallet over a window",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"from": {
"description": "Window start, Unix milliseconds"
},
"state": {
"description": "Open positions right now",
"properties": {
"address": {
"description": "Wallet address (0x…)"
},
"as_of_ts": {
"description": "Snapshot time, Unix milliseconds"
},
"asset_positions": {
"description": "Open positions",
"items": {
"description": "Open position",
"properties": {
"entry_price": {
"description": "Average entry price"
},
"leverage": {
"description": "Leverage"
},
"leverage_type": {
"description": "cross or isolated"
},
"mark_price": {
"description": "Current mark price"
},
"market": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"market_class": {
"description": "perp, spot, prediction or option"
},
"position_value": {
"description": "Position value in USD"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"return_on_equity": {
"description": "Unrealized PnL divided by margin"
},
"size": {
"description": "Signed size: positive long, negative short"
},
"unrealized_pnl": {
"description": "Unrealized PnL in USD"
}
},
"type": "object"
},
"type": "array"
},
"margin_summary": {
"description": "Account totals",
"properties": {
"open_markets_count": {
"description": "Markets with an open position"
},
"total_position_value": {
"description": "Sum of position values in USD"
},
"total_realized_pnl": {
"description": "Sum of realized PnL in USD"
},
"total_unrealized_pnl": {
"description": "Sum of unrealized PnL in USD"
}
},
"type": "object"
}
},
"type": "object"
},
"to": {
"description": "Window end, Unix milliseconds"
},
"window": {
"description": "Window totals",
"properties": {
"fees": {
"description": "Fees in USD"
},
"fill_count": {
"description": "Fills"
},
"losses": {
"description": "Losing closing fills"
},
"maker_fills": {
"description": "Fills as maker"
},
"maker_notional": {
"description": "Maker notional in USD"
},
"pct_maker": {
"description": "Share of fills as maker, 0 to 1"
},
"realized_pnl": {
"description": "Realized PnL in USD"
},
"taker_fills": {
"description": "Fills as taker"
},
"taker_notional": {
"description": "Taker notional in USD"
},
"volume_usd": {
"description": "Traded notional in USD"
},
"win_rate": {
"description": "Share of closed trades that were profitable, 0 to 1"
},
"wins": {
"description": "Profitable closing fills"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "Hyperliquid vaults ranked by net deposits. Needs a Builder or Enterprise key; keyless and free-key calls return 403.",
"inputSchema": {
"properties": {
"limit": {
"description": "Number of vaults (default 10)",
"type": "number"
}
},
"required": [],
"type": "object"
},
"name": "get_vault_leaderboard",
"outputSchema": {
"description": "Vaults ranked by net deposits",
"properties": {
"data": {
"description": "Vaults",
"items": {
"description": "One vault",
"properties": {
"vault": {
"description": "Vault address"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "Deposits into and withdrawals from Hyperliquid vaults. Pass a vault address, a depositor address, or both; one is required.",
"inputSchema": {
"properties": {
"address": {
"description": "User address",
"type": "string"
},
"limit": {
"description": "Number of events (1-100, default 20)",
"type": "number"
},
"vault": {
"description": "Vault address",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_vault_operations",
"outputSchema": {
"description": "Vault deposits and withdrawals",
"properties": {
"data": {
"description": "Vault deposits and withdrawals",
"items": {
"description": "One row",
"properties": {
"address": {
"description": "Depositor"
},
"block_number": {
"description": "Hyperliquid block height"
},
"closing_cost": {
"description": "Cost of closing positions for the withdrawal"
},
"commission": {
"description": "Leader commission"
},
"net_amount": {
"description": "Amount after commission and closing cost"
},
"operation": {
"description": "deposit or withdraw"
},
"requested_amount": {
"description": "Requested amount"
},
"source": {
"description": "Venue, always hyperliquid"
},
"timestamp": {
"description": "Unix milliseconds"
},
"token": {
"description": "Token, usually USDC"
},
"vault": {
"description": "Vault address"
}
},
"type": "object"
},
"type": "array"
},
"pagination": {
"description": "Cursor pagination",
"properties": {
"has_more": {
"description": "Whether more rows exist"
},
"next_cursor": {
"description": "Pass as cursor to fetch the next page; null on the last page"
}
},
"type": "object"
}
},
"type": "object"
}
},
{
"description": "How Hyperliquid wallets trade, from their last 30 days: labels (market_maker, high_frequency, whale, directional, consistent_winner, big_loser, revenge_sizing, often_liquidated, hip3_trader, spot_trader, prediction_trader) and the numbers behind them (maker share, buy/sell imbalance, fills per day, green-day share, profit factor, liquidations). Look up specific addresses, or list wallets with one label.",
"inputSchema": {
"properties": {
"addresses": {
"description": "Comma-separated wallet addresses (up to 50). Omit to list wallets instead.",
"type": "string"
},
"label": {
"description": "Only wallets carrying this label",
"enum": [
"market_maker",
"high_frequency",
"whale",
"directional",
"consistent_winner",
"big_loser",
"revenge_sizing",
"often_liquidated",
"hip3_trader",
"spot_trader",
"prediction_trader"
],
"type": "string"
},
"limit": {
"description": "Wallets to return (default 20, max 100)",
"type": "number"
},
"min_volume_usd": {
"description": "Only wallets with at least this 30-day volume",
"type": "number"
},
"sort_by": {
"description": "Sort order when listing (default volume)",
"enum": [
"volume",
"pnl",
"fills",
"liquidations"
],
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "get_wallet_behavior",
"outputSchema": {
"description": "Wallet trading behaviour over the last 30 days",
"properties": {
"wallets": {
"description": "Wallets",
"items": {
"description": "One wallet",
"properties": {
"address": {
"description": "Wallet address"
},
"fills_per_day": {
"description": "Fills per active day"
},
"labels": {
"description": "Behaviour labels",
"items": {
"description": "Label"
},
"type": "array"
},
"liquidations": {
"description": "Liquidation events"
},
"maker_share": {
"description": "Maker volume / volume"
},
"realized_pnl_usd": {
"description": "30-day realized PnL in USD"
},
"volume_usd": {
"description": "30-day volume in USD"
}
},
"type": "object"
},
"type": "array"
},
"window_days": {
"description": "Days the features cover"
}
},
"type": "object"
}
},
{
"description": "Labels for notable Hyperliquid wallets: top whales by 24h volume, top traders by 30-day realized PnL, vaults and vault leaders. Pass addresses to check specific wallets; without them it lists the whales and smart money.",
"inputSchema": {
"properties": {
"addresses": {
"description": "Comma-separated wallet addresses to look up",
"type": "string"
},
"smart_top_n": {
"description": "Top N smart-money wallets to include (max 500, default 100)",
"type": "number"
},
"whale_top_n": {
"description": "Top N whales to include (max 500, default 100)",
"type": "number"
}
},
"required": [],
"type": "object"
},
"name": "get_wallet_labels",
"outputSchema": {
"description": "Labels for notable wallets",
"properties": {
"counts": {
"description": "Wallets per label kind"
},
"generated_at": {
"description": "Unix milliseconds"
},
"labels": {
"additionalProperties": {
"description": "Labels",
"items": {
"description": "One label",
"properties": {
"kind": {
"description": "whale, smart_money, vault or vault_leader"
},
"name": {
"description": "Display label"
},
"rank": {
"description": "Rank"
}
},
"type": "object"
},
"type": "array"
},
"description": "Address to its labels",
"type": "object"
},
"note": {
"description": "What the labels map includes"
},
"source": {
"description": "Venue, always hyperliquid"
},
"ttl_seconds": {
"description": "Cache lifetime"
}
},
"type": "object"
}
},
{
"description": "List available address cohorts: six predefined groups (top_pnl_30d, high_volume_30d, whale_fills, net_withdrawers_7d, liquidation_prone, vault_whales) plus any custom cohorts the caller has created",
"inputSchema": {
"properties": {},
"required": [],
"type": "object"
},
"name": "list_cohorts",
"outputSchema": {
"description": "Wallet cohorts",
"properties": {
"data": {
"description": "Cohorts",
"items": {
"description": "One cohort",
"properties": {
"description": {
"description": "What the cohort contains"
},
"name": {
"description": "Cohort name"
}
},
"type": "object"
},
"type": "array"
}
},
"type": "object"
}
},
{
"description": "Active Hyperliquid markets with display symbol, class (perp, spot, prediction), HIP-3 issuer and base asset. Use search to find how a market is named (e.g. search 'nvda' finds xyz:NVDA-PERP).",
"inputSchema": {
"properties": {
"issuer": {
"description": "HIP-3 issuer code (e.g. 'flx'). Pass empty string '' to return only native non-builder markets. Omit to include every issuer.",
"type": "string"
},
"limit": {
"description": "Rows to return (default 100)",
"type": "number"
},
"market_class": {
"description": "Market class. Omit to return perp + spot + prediction. 'prediction' filters to HIP-4 outcome contracts.",
"enum": [
"perp",
"spot",
"prediction",
"option"
],
"type": "string"
},
"search": {
"description": "Case-insensitive match on symbol, base asset or Hyperliquid coin",
"type": "string"
},
"source": {
"description": "Venue. Defaults to 'hyperliquid'.",
"type": "string"
}
},
"required": [],
"type": "object"
},
"name": "list_markets",
"outputSchema": {
"description": "Active markets",
"properties": {
"data": {
"description": "Markets",
"items": {
"description": "One market",
"properties": {
"active_from_ms": {
"description": "Listing time, Unix milliseconds"
},
"base_asset": {
"description": "Base asset"
},
"base_market": {
"description": "Display symbol without the HIP-3 issuer prefix"
},
"display_symbol": {
"description": "Display symbol, e.g. \"BTC-PERP\" or \"xyz:NVDA-PERP\""
},
"hl_coin": {
"description": "Hyperliquid coin string"
},
"issuer": {
"description": "HIP-3 builder code (\"\" for native markets)"
},
"market_class": {
"description": "perp, spot, prediction or option"
},
"market_id": {
"description": "Stable market id"
},
"max_leverage": {
"description": "Maximum leverage"
},
"quote_asset": {
"description": "Quote asset, e.g. USDC"
},
"source": {
"description": "Venue, always hyperliquid"
}
},
"type": "object"
},
"type": "array"
},
"matched": {
"description": "Markets matching the search"
},
"returned": {
"description": "Rows in data"
},
"total_markets": {
"description": "Active markets before search"
}
},
"type": "object"
}
},
{
"description": "Run one read-only ClickHouse SELECT over Ironflow's Hyperliquid tables (hl.fills, hl.wallet_daily, hl.wallet_behavior, hl.funding, hl.mark_prices, hl.oracle_prices, hl.open_interest, hl.liquidations, hl.builder_fills, hl.transfers, hl.vault_operations). Call describe_data first for columns and examples. Aggregate in SQL: results are capped (1,000 rows keyless). Keyless: last 24 hours, 5 s per query, 60 query seconds per hour per IP; a free key from https://ironflow.sh/key gives 30 days of history.",
"inputSchema": {
"properties": {
"max_rows": {
"description": "Most rows to return (default 200, capped by your tier)",
"type": "number"
},
"sql": {
"description": "One ClickHouse SELECT (or WITH ... SELECT) over hl.* tables, without a FORMAT clause",
"type": "string"
}
},
"required": [
"sql"
],
"type": "object"
},
"name": "run_query",
"outputSchema": {
"description": "Query result",
"properties": {
"budget_remaining_seconds": {
"description": "Query seconds left this hour"
},
"column_types": {
"description": "ClickHouse types in row order",
"items": {
"description": "Type"
},
"type": "array"
},
"columns": {
"description": "Column names in row order",
"items": {
"description": "Name"
},
"type": "array"
},
"limits": {
"description": "Your tier's limits"
},
"row_count": {
"description": "Rows returned"
},
"rows": {
"description": "Rows as positional arrays",
"items": {
"description": "One row"
},
"type": "array"
},
"stats": {
"description": "elapsed_ms, rows_read, bytes_read"
},
"truncated": {
"description": "true when more rows existed than were returned"
}
},
"type": "object"
}
}
]
}Verify it yourself
curl -s https://api.teppi.xyz/v1/evidence/sha256:e825b89ac8de8855d35875aeaff4f2cc801b287d1a9b6c6b193db5d1da0aed26 | sha256sum