MCP Server

whale-data

com.coinlobster/whale-data

What this MCP does

Provides descriptive crypto market intelligence including prices, funding, open interest, whale activity, liquidations, DeFi activity, news sentiment, and trading signals.

big_catch
Live whale setups
The whale-flow setups tracked right now, one coin each, with state (forming, confirmed, accelerating), direction, age and the price move since it started.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 100; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
coin_brief
Coin brief: why it is moving
The one-call answer for ONE coin, in causal order: price and 24h move, the news read (summary, mood, headlines), whale flow against its own normal, forced closes, funding and open interest, with recorded-history context. Answers "why is X moving" without a second call. view: brief (default), quick (price, funding, open interest only), funding (rate per exchange), crowding (0-100 crowding read, Pro).
Read only Open world Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'view': {'enum': ['brief', 'quick', 'funding', 'crowding'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'compact': {'type': 'boolean', 'description': 'true: one line of text instead of JSON.'}, 'position_usd': {'type': 'number', 'description': 'Position size in USD, to price the funding cost.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
coin_search
Find a coin
Find a coin by symbol or name and learn the symbol the other tools take, whether it is covered and whether it is free, with price and 24h change. Free.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 20; more is clamped and said).'}, 'query': {'type': 'string', 'description': 'Symbol or part of a name, e.g. "sol".'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
history
Price and funding history
History for one coin. series: price (default: near-live hourly or daily bars, oldest first), funding_oi (the intraday open interest and funding path), daily (the recorded daily archive of funding, open interest, price and liquidations for the coin), whale_daily (the recorded daily whale buy and sell flow for the coin).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'days': {'type': 'integer', 'description': 'How many days back to read.'}, 'hours': {'type': 'integer', 'description': 'How many hours back to read.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 720; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'series': {'enum': ['price', 'funding_oi', 'daily', 'whale_daily'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'interval': {'type': 'string', 'description': 'price only: 1h (default) or 1d.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
liquidations
Forced closes (liquidations)
Forced closes. scope: coin (recorded long vs short closes for one coin, the default when a coin is named), market (the whole market, long/short split, the default otherwise), lending (on-chain lending liquidations with both wallets, never added to perp), projected (modelled levels, not trades), heat (where closes hit by price band). A long is force-closed by selling.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'chain': {'type': 'string', 'description': 'ethereum, base or arbitrum. Omit for all.'}, 'hours': {'type': 'integer', 'description': 'How many hours back to read.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 1000; more is clamped and said).'}, 'scope': {'enum': ['coin', 'market', 'lending', 'projected', 'heat'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'since_ms': {'type': 'integer', 'description': 'Only rows newer than this Unix-ms time (polling cursor).'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
market_now
Market now: what changed
The whole market in one call. view: changes (default: what changed since your last check or since_ms, ranked by how unusual, with plain state labels, what whales net bought and sold, coins that turned unusual, biggest movers, forced closes, the market news read; pass back next_since_ms on a timer), overview (totals, whale net flow, top coins; pass coin for one row), movers (24h gainers and losers with volume), extremes (pairs at a record or their own top or bottom 5% for funding, open interest or liquidations), defi (DEX volume and TVL per chain).
Read only Open world Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'only': {'enum': ['gainers', 'losers'], 'type': 'string', 'description': 'movers only: one side.'}, 'view': {'enum': ['changes', 'overview', 'movers', 'extremes', 'defi'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 50; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'since_ms': {'type': 'integer', 'description': 'changes only: only changes after this Unix-ms time. Omit for everything since your last check.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
market_screener
Market screener
Screen every recorded pair at once: funding_band and oi_band against each pair's own recorded days (record high, top 5%, top 25%, typical, bottom 25%, bottom 5%, record low), a minimum whale-flow multiple, and unusual-only.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 50; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'compact': {'type': 'boolean', 'description': 'true: one line per coin.'}, 'oi_band': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Open interest band(s).'}, 'funding_band': {'anyOf': [{'type': 'string'}, {'type': 'array', 'items': {'type': 'string'}}], 'description': 'Funding band(s), e.g. "top 5%".'}, 'unusual_only': {'type': 'boolean', 'description': 'Only coins with unusual whale activity now.'}, 'whale_mult_min': {'type': 'number', 'description': "Minimum whale flow as a multiple of the coin's own average."}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
my_access
My plan and answers left
Your plan, what it includes, roughly how many answers are left, and the next plan up. Free, never counted.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
my_alerts
My fired alerts
What your CoinLobster alerts fired since a time, newest first, with the move since each. Needs a signed-in connection (free).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'since_ms': {'type': 'integer', 'description': 'Only rows newer than this Unix-ms time (polling cursor).'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
news
Crypto news
Headlines for one coin with the mood score (-100 to +100), the written points behind it and the market-wide read. For "why is X moving" use coin_brief: it already carries this.
Read only Open world Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 20; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
options
Options (BTC, ETH)
BTC or ETH options: open interest by strike, put/call balance, max pain per expiry, implied volatility and recent large option trades.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'BTC (default) or ETH.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
orderbook
Order book
The order book for one coin merged across exchanges: best bid and ask, the gap between them, and the dollars resting on each side with the exchanges holding each level.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'levels': {'type': 'integer', 'description': 'Price levels per side.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
sectors
Sector rotation
Where whale money is moving between sectors (L1, L2, DeFi, memes, AI and others): net direction, share of flow and the coins carrying it.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'window': {'enum': ['1h', '4h', '24h'], 'type': 'string', 'description': 'Time window: 1h, 4h or 24h.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
signals
Signal track record
Signals logged live when they fired, never backfilled, with the price after. view: recent (default: the latest signals and their outcomes), record (the last N firings of one type on one coin: how many rose, median move), scorecard (the totals only).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'type': {'type': 'string', 'description': 'Signal type; an unknown one lists the valid types.'}, 'view': {'enum': ['recent', 'record', 'scorecard'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'hours': {'type': 'integer', 'description': 'How many hours back to read.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 500; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
situations
What is developing
What is going on right now, in stages (emerging, confirmed, escalating, cooling, contested): one coin, one story each, with the evidence behind it and the price move since it started.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 50; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'include_resolved': {'type': 'boolean', 'description': 'Also finished ones with their outcome (Pro).'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
traders
Smart money and big traders
Smart money here means the PROVEN cohort: Hyperliquid accounts screened for real profit and verified by their own fills. view: smart_money (default: what that cohort holds and trades per coin), proven (who they are, by trader number), screened (every wallet screened from closing fills, a weaker claim), board (tracked big accounts: equity, leverage, bias), moves (opens, adds, trims, closes, flips just now), dex (wallets moving the most on DEXes).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'kind': {'type': 'string', 'description': 'moves only: open, add, trim, close or flip.'}, 'view': {'enum': ['smart_money', 'proven', 'screened', 'board', 'moves', 'dex'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'chain': {'type': 'string', 'description': 'ethereum, base or arbitrum. Omit for all.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 100; more is clamped and said).'}, 'token': {'type': 'string', 'description': 'dex only: one token.'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'wallet': {'type': 'string', 'description': 'moves only: one account address.'}, 'window': {'enum': ['1h', '4h', '24h'], 'type': 'string', 'description': 'Time window: 1h, 4h or 24h.'}, 'since_ms': {'type': 'integer', 'description': 'Only rows newer than this Unix-ms time (polling cursor).'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
wallet
One wallet or account
One address. A Hyperliquid account returns its live positions, leverage, liquidation prices and recent fills; an Ethereum, Base or Arbitrum wallet returns its DEX swaps and net flow per token. chain: auto (default: tries Hyperliquid, then on-chain), hyperliquid, or evm.
Read only Idempotent
Input schema
{'type': 'object', 'required': ['address'], 'properties': {'chain': {'enum': ['auto', 'hyperliquid', 'evm', 'ethereum', 'base', 'arbitrum'], 'type': 'string', 'description': 'auto (default), hyperliquid, or evm (ethereum, base, arbitrum).'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 200; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'address': {'type': 'string', 'description': '0x followed by 40 hex characters.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
watch
Alerts to a webhook
Alerts checked continuously and posted to your webhook when they trigger. action: list (default), create (coin + trigger: radar_unusual, flag_fired or funding_band with band, + webhook_url), delete (id). Starter and up to create.
Destructive Open world
Input schema
{'type': 'object', 'properties': {'id': {'type': 'string', 'description': 'delete only: the alert id.'}, 'band': {'type': 'string', 'description': 'create with funding_band: the band, e.g. "top 5%".'}, 'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'action': {'enum': ['list', 'create', 'delete'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'trigger': {'enum': ['radar_unusual', 'flag_fired', 'funding_band'], 'type': 'string', 'description': 'create only: what triggers it.'}, 'webhook_url': {'type': 'string', 'description': 'create only: a public https URL you control.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
watchlist_brief
My watchlist
Every coin on your watchlist through the whale read in one call: flow against each coin's normal, buy or sell lean, and whether it is unusual now. Needs a signed-in connection (free).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
whale_activity
Whale activity on a coin
What whales are doing, per coin. view: summary (default with a coin: net flow over 1h/4h/24h/7d, exchange vs on-chain vs Hyperliquid split, flow against price), hourly (buy and sell dollars per hour), trades (individual whale trades, newest first), venues (which exchanges hold the flow), context (is this unusual for THIS coin, accepts a list), hyperliquid (fills with both wallets named), onchain (DEX swaps on Ethereum, Base, Arbitrum with the signer).
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'coin': {'type': 'string', 'description': 'Coin symbol, e.g. BTC. A pair like ETH/USD works too.'}, 'view': {'enum': ['summary', 'hourly', 'trades', 'venues', 'context', 'hyperliquid', 'onchain'], 'type': 'string', 'description': 'Which lane; see the description.'}, 'chain': {'type': 'string', 'description': 'ethereum, base or arbitrum. Omit for all.'}, 'coins': {'anyOf': [{'type': 'array', 'items': {'type': 'string'}}, {'type': 'string'}], 'description': 'Several coins in one call (list or "BTC,ETH"), up to 10.'}, 'hours': {'type': 'integer', 'description': 'How many hours back to read.'}, 'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 200; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'source': {'enum': ['cex', 'dex', 'all'], 'type': 'string', 'description': 'trades only: exchanges, DEX swaps or both.'}, 'min_usd': {'type': 'number', 'description': 'Smallest trade in USD.'}, 'since_ms': {'type': 'integer', 'description': 'Only rows newer than this Unix-ms time (polling cursor).'}, 'breakdown': {'enum': ['none', 'venues', 'wallets', 'all'], 'type': 'string', 'description': 'hourly only: split each hour by exchange or wallet (Pro).'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
whale_radar
Unusual whale activity
Which coins have UNUSUAL whale flow right now, each against its own normal, over 1h, 4h and 24h, ranked by how far above normal (not by dollar size). For discovery when no coin is named.
Read only Idempotent
Input schema
{'type': 'object', 'properties': {'limit': {'type': 'integer', 'description': 'Rows to return (usually up to 100; more is clamped and said).'}, 'cursor': {'type': 'string', 'description': 'Next page: the cursor from the previous answer.'}, 'detail': {'enum': ['brief', 'full'], 'type': 'string', 'description': 'brief (default): the answer, key numbers and top rows. full: every row, paged with cursor.'}, 'window': {'enum': ['1h', '4h', '24h'], 'type': 'string', 'description': 'One window only. Omit for all three.'}}, 'additionalProperties': {}}
Output schema
{'type': 'object', 'properties': {'as_of': {'description': 'Data time, ISO.'}, 'caveat': {'description': 'A real limit, when non-null.'}, 'cursor': {'description': 'Next page (detail full).'}, 'delayed': {'description': 'Set when not live.'}, 'summary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'description': 'The answer in one sentence.'}, 'as_of_ms': {'anyOf': [{'type': 'number'}, {'type': 'null'}], 'description': 'Data time, Unix ms.'}, 'available': {'type': 'boolean', 'description': 'False: no data; note says why.'}, 'truncated': {'description': 'Rows held back; see trimmed.'}, 'next_tools': {'type': 'array', 'items': {'type': 'object', 'properties': {}, 'additionalProperties': {}}, 'description': 'Follow-up calls {tool,args,why}.'}, 'access_note': {'description': 'What this connection could not return.'}}, 'additionalProperties': {}}
Removed
whale_trades
Sept. 25, 2026, 3:01 a.m.
Removed
whale_tape
Sept. 25, 2026, 3:01 a.m.
Removed
whale_sectors
Sept. 25, 2026, 3:01 a.m.
Removed
whale_profile
Sept. 25, 2026, 3:01 a.m.
Removed
whale_flow
Sept. 25, 2026, 3:01 a.m.
Removed
whale_context
Sept. 25, 2026, 3:01 a.m.
Removed
watch_list
Sept. 25, 2026, 3:01 a.m.
Removed
watch_delete
Sept. 25, 2026, 3:01 a.m.
Removed
watch_create
Sept. 25, 2026, 3:01 a.m.
Removed
trade_context
Sept. 25, 2026, 3:01 a.m.
Removed
squeeze_score
Sept. 25, 2026, 3:01 a.m.
Removed
smart_money
Sept. 25, 2026, 3:01 a.m.
Removed
signal_record
Sept. 25, 2026, 3:01 a.m.
Removed
signal_outcomes
Sept. 25, 2026, 3:01 a.m.
Removed
proven_traders
Sept. 25, 2026, 3:01 a.m.
Removed
price_candles
Sept. 25, 2026, 3:01 a.m.
Removed
onchain_whales
Sept. 25, 2026, 3:01 a.m.
Removed
oi_funding_history
Sept. 25, 2026, 3:01 a.m.
Removed
market_snapshot
Sept. 25, 2026, 3:01 a.m.
Removed
market_overview
Sept. 25, 2026, 3:01 a.m.
Removed
market_movers
Sept. 25, 2026, 3:01 a.m.
Removed
market_liquidations
Sept. 25, 2026, 3:01 a.m.
Removed
market_history
Sept. 25, 2026, 3:01 a.m.
Removed
market_extremes
Sept. 25, 2026, 3:01 a.m.
Removed
market_digest
Sept. 25, 2026, 3:01 a.m.
Removed
market_changes
Sept. 25, 2026, 3:01 a.m.
Removed
market_brief
Sept. 25, 2026, 3:01 a.m.
Removed
liq_zones
Sept. 25, 2026, 3:01 a.m.
Removed
liq_heat
Sept. 25, 2026, 3:01 a.m.
Removed
hl_whales
Sept. 25, 2026, 3:01 a.m.