protogrid

Search / app.liquidvision/derivatives

LiquidVision — Crypto Derivatives Data

R0· no sign-in

Exchange-exact crypto derivatives data for AI agents: OI, funding, liquidations, 13 venues, 42 tools

v1.3.0 · active · repository · website · descriptor JSON · versions

An agent can connect right now, no human step.Remote endpoint, no authentication, reachable on the last probe.
Quality60needs work
Trust96of 100
Uptime, 30 days100%
Latency p50544 ms

Connect

8 clients · secrets stay placeholders
{
  "mcpServers": {
    "derivatives": {
      "type": "http",
      "url": "https://liquidvision.app/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  }
}
claude mcp add --transport http derivatives https://liquidvision.app/mcp --header "X-API-Key: ${X_API_KEY}"
[mcp_servers.derivatives]
url = "https://liquidvision.app/mcp"
env_http_headers = { "X-API-Key" = "X_API_KEY" }
{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "derivatives": {
      "type": "remote",
      "url": "https://liquidvision.app/mcp",
      "enabled": true,
      "headers": {
        "X-API-Key": "{env:X_API_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "derivatives": {
      "type": "http",
      "url": "https://liquidvision.app/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  },
  "deeplink": "cursor://anysphere.cursor-deeplink/mcp/install?name=derivatives&config=eyJ0eXBlIjoiaHR0cCIsInVybCI6Imh0dHBzOi8vbGlxdWlkdmlzaW9uLmFwcC9tY3AiLCJoZWFkZXJzIjp7IlgtQVBJLUtleSI6IiR7WF9BUElfS0VZfSJ9fQ%3D%3D"
}
{
  "servers": {
    "derivatives": {
      "type": "http",
      "url": "https://liquidvision.app/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  }
}
{
  "mcpServers": {
    "derivatives": {
      "httpUrl": "https://liquidvision.app/mcp",
      "headers": {
        "X-API-Key": "${X_API_KEY}"
      }
    }
  }
}
extensions:
  "derivatives":
    enabled: true
    name: "derivatives"
    type: streamable_http
    uri: "https://liquidvision.app/mcp"
    headers:
      "X-API-Key": "${X_API_KEY}"
    timeout: 300

Placeholders to fill from your own secret store: ${X_API_KEY}. The registry never accepts secret values.

Quality 60 / 100needs work

protocol75 · weight 25
  • warn
    protocol.modernnewest supported version is 2025-11-25; 2026-07-28 not supported, older versions are deprecated until 2027-07-28
  • n/a
    protocol.statelessonly applies to 2026-07-28 servers
  • pass
    protocol.transportstreamable HTTP
  • n/a
    protocol.list_ttlonly applies to 2026-07-28 servers
authorizationn/a · weight 15
  • n/a
    auth.prm, auth.as_metadata, auth.cimdno remote uses OAuth
  • n/a
    auth.secret_in_urlno templated URL
tool hygiene64 · weight 30
  • pass
    tools.descriptionsevery tool has a description
  • pass
    tools.description_lengthdescriptions are concise
  • pass
    tools.schemasevery tool has an object input schema
  • fail
    tools.annotationsno tool declares readOnlyHint or destructiveHint, so clients cannot tell safe calls from risky ones
  • fail
    tools.directory_hintsno tool declares all four of readOnlyHint, destructiveHint, idempotentHint and openWorldHint; missing: list_markets (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_accuracy (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); get_microstructure (readOnlyHint, destructiveHint, idempotentHint, openWorldHint); …
  • pass
    tools.token_costabout 6,536 tokens to load every tool
  • warn
    tools.api_dump42 tools, 98% named like REST operations: looks like an API mapped one endpoint per tool
stability25 · weight 15
  • warn
    stability.changes37 tool changes in 30 days
  • fail
    stability.rug_pull10 tools kept their name but changed most of their description in 30 days; review before trusting them
dependenciesn/a · weight 15
  • n/a
    deps.known_vulns, deps.mcp_sdk_version, deps.resolvableno npm or PyPI package

42 tools, about 6,536 tokens to load them all · tool set 65a5a9add6e2 · tools last changed 2026-10-16 · checked 2026-10-19 22:46 UTC

Tool changes

  • get_tokenized_stocksadded

    [measured] Tokenized stocks, indices, ETFs, commodities, FX, rates and pre-IPO names traded as PERPS on DEXs (Lighter and Hyperliquid builder markets): one row per underlying (NVDA, TSLA, S&P 500, Gold, EUR/USD, Anthropic...) with every venue's mark, open interest, 24 h volume, funding APR and the price gap between venues in bps. asset_class filters: equity | crypto_equity | etf | index | commodity | fx | rates | preipo. Use get_hl_builder_markets for the raw Hyperliquid HIP-3 list by dex.

  • list_history_packagesadded

    [measured] Monthly Parquet history packages for backtests: liquidations (11 venues), funding hourly and settlements, open interest hourly, Hyperliquid and Lighter positions with liquidation prices — one file per dataset per month since 2026-07 with rows, bytes and sha256. Each entry has `url` (download with the API key in X-API-Key) and `available` for the caller's tier: Pro = this month and the previous one, Bot = all, free = none (use get_history for the last 24 h).

  • get_lighter_liquidation_mapchangeddescription
    before

    [measured] Liquidation map for Lighter (zk perp DEX), not a model: leveraged positions of the accounts we have read, binned by Lighter's own liquidation price, long/short notional per bin, cumulative curves, the largest positions and the share of the venue's open interest covered. Accounts are discovered from the public trade stream, so coverage grows with time. range: 12h | 1d | 3d | 7d | max.

    after · 67% of words in common

    [measured, RISK AHEAD, Lighter] REAL open positions on Lighter (zk perp DEX; crypto plus equity indices, stocks, forex, commodities) binned by Lighter's own liquidation price. Not a model. Use this for Lighter; get_hl_liquidation_map for Hyperliquid; get_liquidation_map (modeled) for the CEXs. Accounts are discovered from the public trade stream, so coverage (covered_long_pct/covered_short_pct of venue open interest) grows with time. Returns long/short notional per bin, cumulative curves and the largest positions. range: 12h | 1d | 3d | 7d | max.

  • get_cvdchangeddescriptionmeaning changed
    before

    Cumulative volume delta split by trade size (retail <$10K, mid <$100K, large <$1M, whale >$1M). Whale-vs-retail divergence = smart-money signal.

    after · 42% of words in common

    Cumulative volume delta split by trade size (retail <$10K, mid <$100K, large <$1M, whale >$1M). Whale-vs-retail divergence is the usual smart-money reading; buckets are per published row and only Binance aggregates taker orders, so compare buckets within one exchange (exchange=binance) rather than across venues.

  • get_liquidation_heatmapchangeddescription
    before

    [modeled] How the liquidation map evolved over time: grid[t][b] is the estimated USD of leveraged positions with their liquidation price in price bin b at time cols[t] (ms), bins[b] is the bin's centre price (240 bins fitted to the traded range) and price[t] is the close. A level disappears once price trades through it. Use get_liquidation_map for the current picture only (smaller answer, split by leverage and exchange); use this one to see when a cluster formed and whether it is still there. The answer is large (about 35,000 numbers). symbol: BASEUSDT. exchange: all | binance | bybit | okx. range: 12h | 1d | 3d | 7d.

    after · 82% of words in common

    [modeled, RISK AHEAD, CEX, over time] The same estimated CEX map as get_liquidation_map but as a time series: grid[t][b] is the estimated USD of leveraged positions with their liquidation price in price bin b at time cols[t] (ms), bins[b] the bin's centre price (240 bins fitted to the traded range), price[t] the close. A level disappears once price trades through it. Call this only to see WHEN a cluster formed and whether it survived; for the current picture call get_liquidation_map (far smaller answer, split by leverage and exchange). The answer is large (about 35,000 numbers). symbol: BASEUSDT. exchange: all | binance | bybit | okx. range: 12h | 1d | 3d | 7d.

  • get_hl_liquidation_mapchangeddescription
    before

    [measured] Liquidation map for Hyperliquid, not a model: leveraged positions of the 10,000 largest accounts binned by the exchange-reported liquidation price, long/short notional per bin, cumulative curves and the largest positions. Partial coverage: large accounts only. range: 12h | 1d | 3d | 7d | max (±100%, recommended: large accounts run low leverage).

    after · 53% of words in common

    [measured, RISK AHEAD, Hyperliquid] REAL open positions on Hyperliquid binned by the liquidation price the exchange itself reports: the 10,000 largest accounts plus every account that traded since the reader started (~10,000 accounts, ~40-45% of venue open interest, stated in covered_long_pct/covered_short_pct). Not a model. Use this for Hyperliquid; use get_lighter_liquidation_map for Lighter and get_liquidation_map (modeled) for the CEXs. Returns long/short notional per bin, cumulative curves and the largest positions. range: 12h | 1d | 3d | 7d | max (±100%, recommended: large accounts run low leverage).

  • get_liquidation_mapchangeddescription
    before

    [modeled] Liquidation map for a perp symbol (e.g. BTCUSDT): estimated notional of leveraged positions per price bin at their liquidation price, split by leverage tier (5/10/20/25/50/100x) and by exchange (binance/bybit/okx or 'all'), plus cumulative long/short curves from the current price outward. range: 12h | 1d | 3d | 7d. It answers "if price reaches this level, how much is there" (backtest: top quarter of the levels price traded held 32% of the liquidated USD, chance 25%); it does NOT predict where price will go. Live scoring: get_accuracy.

    after · 63% of words in common

    [modeled, RISK AHEAD, CEX, now] ESTIMATED open leveraged positions on Binance/Bybit/OKX per price bin at their liquidation price, from candles and open-interest deltas (the CEXs do not publish positions). Current snapshot only; for its evolution over time use get_liquidation_heatmap; for REAL positions use get_hl_liquidation_map (Hyperliquid) or get_lighter_liquidation_map (Lighter); for what already got liquidated use the PAST tools. Returns notional per bin split by leverage tier (5/10/20/25/50/100x) and by exchange, plus cumulative long/short curves from the current price outward. exchange: all | binance | bybit | okx. range: 12h | 1d | 3d | 7d. It ranks levels ("if price reaches this level, how much is there": top quarter of traded levels holds ~30-32% of liquidated USD, chance ~24%); it does NOT predict where price will go. Live scoring: get_accuracy.

  • get_liquidations_summarychangeddescription
    before

    [measured] Liquidation totals for the whole market, already added up: rekt (USD liquidated in the last 1h/4h/12h/24h, split long/short), by_symbol and by_exchange over the last `minutes`, and series (30-minute buckets). Start here for "how much was liquidated"; use get_liquidations for the individual orders and get_liquidation_cascades for events. Totals are a floor: Binance and Bitget throttle their feeds. side=long means longs were liquidated. minutes: 1 to 1440, applies to the breakdowns and the series.

    after · 66% of words in common

    [measured, PAST] TOTALS of liquidations that already happened: rekt (USD liquidated in the last 1h/4h/12h/24h, split long/short), by_symbol and by_exchange over the last `minutes`, and series (30-minute buckets). The one to call for "how much was liquidated"; it does not return individual orders (get_liquidations) or events (get_liquidation_cascades), and says nothing about open positions (the *_liquidation_map tools). Totals are a floor: Binance and Bitget throttle their feeds. side=long means longs were liquidated. minutes: 1 to 1440.

  • get_liquidationschangeddescription
    before

    Recent liquidation events (side, price, qty), NEWEST FIRST, at most `limit` rows (max 2000). Market-wide, 500 rows is only a few minutes of a busy hour: pass `symbol` (BTCUSDT) and/or `min_usd` to look further back, or use get_liquidations_summary for totals and get_history for the archive. side=long means a long position was liquidated.

    after · 64% of words in common

    [measured, PAST] Individual liquidation ORDERS that already happened (side, price, qty), newest first, at most `limit` rows (max 2000). This is the raw feed: use it when you need the orders themselves. For totals use get_liquidations_summary; for cascades as events use get_liquidation_cascades; for where OPEN positions would be liquidated use a *_liquidation_map tool. Market-wide, 500 rows is only a few minutes of a busy hour: pass `symbol` (BTCUSDT) and/or `min_usd` to look further back. side=long means a long position was liquidated.

  • get_funding_arbitrageadded

    [measured] Funding carry screener on REALIZED numbers: for each coin, the venue pair a desk would put on (short where funding is richest, long where it is cheapest) and what that pair actually earned from funding over the last 7 and 30 days from our hourly archive, annualized; positive_share_7d = share of the week's hours the pair was net positive (0.5 is a coin flip); current_spread_apr = the same pair right now; mark_gap_bps = short-venue mark over long-venue mark (positive = entry in your favour). Use get_funding_dispersion for the live spread across all venues. Everything is gross: before taker fees, basis moves and two margin accounts. Not financial advice.

Showing the latest 10. Full history: list_changes · trend: quality JSON.

Checks run on what our credential-free, read-only probes observe; tools are never called and no code audit is performed. How it is computed.

Trust 96 / 100

provenance85
liveness100
freshness100
hygiene100

+repository +dns-namespace +website +reachable +uptime-100% +updated-3d-ago

Derived from observable signals (official registry feed and our own credential-free probes); no code audit performed. How it is computed.

Endpoints

remoteauthreachableuptime 30dp50protocollast ok
https://liquidvision.app/mcp streamable-httpnoneyes100%544 ms2025-11-252026-10-19

Tools (42)

create_alertSubscribe an HTTPS URL to push alerts instead of polling (Pro: 3, Bot: 20 subscriptions). type='cascade': a liquidation cascade just ended, over min_usd and x_normal times the coin's normal minute. type='hl_near_liq': a Hyperliquid whale position over min_usd within max_dist_pct of its liquidation price. type='cluster_sweep': price reached one of the 10 largest modeled liquidation-map clusters (size over min_usd; no symbol = BTC, ETH, SOL), sent 3 min later with modeled vs actually liquidated USD. Returns the signing secret ONCE: verify header X-LiquidVision-Signature = hex HMAC-SHA256(secret, raw body). Needs a Pro or Bot key.
delete_alertPermanently delete one webhook alert subscription. DESTRUCTIVE and not reversible: deliveries to its URL stop at once and its signing secret is discarded (create_alert issues a new one). Only a subscription owned by the caller's API key can be deleted; an id belonging to another key returns {"deleted": false} and changes nothing. id: the number returned by create_alert or list_alerts. Needs a Pro or Bot key (X-API-Key header of the MCP connection, or api_key).
explain_marketAI risk-intelligence answer: ask e.g. 'Why did BTC drop 4%?' and get a concise grounded explanation (liquidation cascades, funding extremes, where the positions sit, next risk zone) computed from live derivatives data across 13 venues (CEXs, Hyperliquid and GMX).
get_accuracy[measured] The public accuracy audit: our open interest and funding vs Binance, Bybit, OKX and Hyperliquid's own endpoints, sampled every 10 min (diff %, snapshot age, 24h mean/max), plus how the modeled liquidation map scored against realized liquidations. Read this before trusting any number here with money.
get_api_keyGet a free LiquidVision API key for this agent's owner, by email, without a browser. Works for a NEW email only (an existing account's key is never returned; its owner sees it at liquidvision.app/data). Use the key as X-API-Key on REST or on this MCP endpoint for 300 req/min instead of the shared anonymous budget, and to upgrade later to Pro/Bot (history exports, webhook alerts). Ask the user for the email first; do not invent one.
get_arbitrum_perpsArbitrum perps board: GMX v2 open interest per coin and its share of every tracked venue, GMX funding next to the CEX median (8h basis), on-chain liquidations over 24h. Ask this for 'how is Arbitrum positioned vs CEXs'.
get_cash_flowsDerivatives cash flow per exchange: net USD into/out of open interest over 1h/4h/24h windows, per core symbol. Positive = money flowing in.
get_cvdCumulative volume delta split by trade size (retail <$10K, mid <$100K, large <$1M, whale >$1M). Whale-vs-retail divergence is the usual smart-money reading; buckets are per published row and only Binance aggregates taker orders, so compare buckets within one exchange (exchange=binance) rather than across venues.
get_footprint[measured] Footprint chart data: for each candle, taker BUY and taker SELL volume in USD and the trade count at each of 30 price levels, from the archived trade streams of Binance, Bybit, OKX, Bitget and Gate. Use it to see at which prices aggressive buyers or sellers were absorbed; for the net flow over time by trade size use get_cvd. symbol: BTCUSDT, ETHUSDT or SOLUSDT only. minutes: look-back window, 15 to 10080. step: candle size in minutes, 1 to 240.
get_funding_arbitrage[measured] Funding carry screener on REALIZED numbers: for each coin, the venue pair a desk would put on (short where funding is richest, long where it is cheapest) and what that pair actually earned from funding over the last 7 and 30 days from our hourly archive, annualized; positive_share_7d = share of the week's hours the pair was net positive (0.5 is a coin flip); current_spread_apr = the same pair right now; mark_gap_bps = short-venue mark over long-venue mark (positive = entry in your favour). Use get_funding_dispersion for the live spread across all venues. Everything is gross: before taker fees, basis moves and two margin accounts. Not financial advice.
get_funding_dispersionCoins ranked by how far funding disagrees ACROSS exchanges. For each coin: the spread in APR points between the venue charging the most and the one paying the most, plus which venue to hold the long on and which to hold the short on. Every leg is annualized with its own settlement cycle (1h / 4h / 8h), and the ranking uses the median rate over `window` minutes rather than the latest print, which is noisy for hourly contracts.
get_funding_history[measured] Funding rate over time for one contract, one row per venue per time bucket: ts (ms), exchange, funding_rate (per settlement interval, a fraction), mark_price and funding_hours (that contract's interval: 1, 4 or 8). Annualize as rate * 8760 / funding_hours. This is the LIVE predicted rate sampled over time; for the rates actually paid at each settlement (2 years back) use get_funding_settlements. symbol: BASEUSDT. minutes: 5 to 20160.
get_funding_ratesLatest perpetual funding rates and mark prices for every tracked exchange/symbol pair. Positive rate = longs pay shorts.
get_funding_settlementsSettled funding rates, one row per settlement, from Binance and Bybit history — up to 730 days for any pool coin (e.g. BTCUSDT). The backtest series; get_funding_history is the live 10-second archive since July 2026.
get_history[measured] Historical rows as CSV, for backtests. dataset: liquidations | funding_settlements (since 2024-09) | funding_hourly | open_interest_hourly | hl_positions (Hyperliquid whale positions with liquidation prices). start/end are ISO dates (UTC). Without a key or on the free tier only the last 24 hours are available; Pro: any 31-day window; Bot: full history. The key is read from the MCP connection's X-API-Key header, or pass api_key. limit caps rows here (max 5000); for bulk use download_url with the same key.
get_hl_account[measured] One Hyperliquid account by address: live positions (size, entry, mark, liquidation price, distance to liquidation, leverage, unrealized PnL), account value, and its archived position snapshots. History depth: 24 h free, 31 days Pro, everything since 2026-09-27 on Bot (key from the MCP connection's X-API-Key header, or api_key).
get_hl_builder_markets[measured] Perp markets deployed on Hyperliquid by third parties (HIP-3 builder dexs): equity indices, single stocks, commodities and pre-IPO names such as xyz:SP500 or xyz:GOLD. For each dex: its markets (coin named dex:COIN), open interest in USD (one side), 24h volume, mark price, hourly funding and its APR. These are NOT in get_open_interest or get_funding_rates, which cover Hyperliquid's own crypto listing. Live from Hyperliquid, cached 2 minutes. No arguments.
get_hl_liquidation_map[measured, RISK AHEAD, Hyperliquid] REAL open positions on Hyperliquid binned by the liquidation price the exchange itself reports: the 10,000 largest accounts plus every account that traded since the reader started (~10,000 accounts, ~40-45% of venue open interest, stated in covered_long_pct/covered_short_pct). Not a model. Use this for Hyperliquid; use get_lighter_liquidation_map for Lighter and get_liquidation_map (modeled) for the CEXs. Returns long/short notional per bin, cumulative curves and the largest positions. range: 12h | 1d | 3d | 7d | max (±100%, recommended: large accounts run low leverage).
get_hl_whales[measured] Leveraged positions of the 10,000 largest Hyperliquid accounts with the exchange-reported liquidation price, closest to liquidation first (sort='value' = largest first). Filters: coin (BTC), side (long|short), min_usd, max_dist_pct. Each row carries the account address; pass it to get_hl_account. Snapshot age is in age_s.
get_lighter_liquidation_map[measured, RISK AHEAD, Lighter] REAL open positions on Lighter (zk perp DEX; crypto plus equity indices, stocks, forex, commodities) binned by Lighter's own liquidation price. Not a model. Use this for Lighter; get_hl_liquidation_map for Hyperliquid; get_liquidation_map (modeled) for the CEXs. Accounts are discovered from the public trade stream, so coverage (covered_long_pct/covered_short_pct of venue open interest) grows with time. Returns long/short notional per bin, cumulative curves and the largest positions. range: 12h | 1d | 3d | 7d | max.
get_lighter_whales[measured] Leveraged positions on Lighter with the exchange-reported liquidation price, closest to liquidation first (sort='value' = largest first). Filters: coin (BTC), side (long|short), min_usd, max_dist_pct. address is the Lighter account index, l1_address the wallet. Snapshot age is in age_s.
get_liquidation_cascades[measured, PAST] Liquidation CASCADES as discrete events: bursts of liquidations detected against each coin's own 7-day normal minute. Use it for "when did forced selling snowball and what did price do"; not for totals (get_liquidations_summary), raw orders (get_liquidations) or open positions at risk (*_liquidation_map). Each event: coin, which side broke, start, how long it ran, total and peak-minute USD, multiple of the coin's normal minute, the mark-price move during it and in the hour after. market_wide lists minutes when three or more unrelated coins cascaded together. hours: display window (baseline is always the last 7 days).
get_liquidation_heatmap[modeled, RISK AHEAD, CEX, over time] The same estimated CEX map as get_liquidation_map but as a time series: grid[t][b] is the estimated USD of leveraged positions with their liquidation price in price bin b at time cols[t] (ms), bins[b] the bin's centre price (240 bins fitted to the traded range), price[t] the close. A level disappears once price trades through it. Call this only to see WHEN a cluster formed and whether it survived; for the current picture call get_liquidation_map (far smaller answer, split by leverage and exchange). The answer is large (about 35,000 numbers). symbol: BASEUSDT. exchange: all | binance | bybit | okx. range: 12h | 1d | 3d | 7d.
get_liquidation_map[modeled, RISK AHEAD, CEX, now] ESTIMATED open leveraged positions on Binance/Bybit/OKX per price bin at their liquidation price, from candles and open-interest deltas (the CEXs do not publish positions). Current snapshot only; for its evolution over time use get_liquidation_heatmap; for REAL positions use get_hl_liquidation_map (Hyperliquid) or get_lighter_liquidation_map (Lighter); for what already got liquidated use the PAST tools. Returns notional per bin split by leverage tier (5/10/20/25/50/100x) and by exchange, plus cumulative long/short curves from the current price outward. exchange: all | binance | bybit | okx. range: 12h | 1d | 3d | 7d. It ranks levels ("if price reaches this level, how much is there": top quarter of traded levels holds ~30-32% of liquidated USD, chance ~24%); it does NOT predict where price will go. Live scoring: get_accuracy.
get_liquidations[measured, PAST] Individual liquidation ORDERS that already happened (side, price, qty), newest first, at most `limit` rows (max 2000). This is the raw feed: use it when you need the orders themselves. For totals use get_liquidations_summary; for cascades as events use get_liquidation_cascades; for where OPEN positions would be liquidated use a *_liquidation_map tool. Market-wide, 500 rows is only a few minutes of a busy hour: pass `symbol` (BTCUSDT) and/or `min_usd` to look further back. side=long means a long position was liquidated.
get_liquidations_summary[measured, PAST] TOTALS of liquidations that already happened: rekt (USD liquidated in the last 1h/4h/12h/24h, split long/short), by_symbol and by_exchange over the last `minutes`, and series (30-minute buckets). The one to call for "how much was liquidated"; it does not return individual orders (get_liquidations) or events (get_liquidation_cascades), and says nothing about open positions (the *_liquidation_map tools). Totals are a floor: Binance and Bitget throttle their feeds. side=long means longs were liquidated. minutes: 1 to 1440.
get_long_short_ratioLatest global long/short account ratio per exchange/symbol.
get_market_briefDeterministic market brief for a perp symbol: 24h liquidations (totals, by exchange), current funding + 24h extremes per venue, OI by venue with 1h/4h/24h changes, net position flows, modeled liquidation risk zones above/below price, and top-trader positioning. Free, no LLM involved — ideal input for your own reasoning.
get_microstructureCross-venue order book microstructure for BTC, ETH and SOL. Per venue: spread in bps, immediately-executable depth in USD and the bid share of it, measured over a band narrow enough that every venue's stream captured it, each venue around its own mid. Also the basis - how far apart venues price the same asset - plus a per-minute spread history. Does NOT answer "what moves price 0.5%": the streams only carry the innermost levels, so that would be extrapolation, not measurement.
get_oi_boardPer-venue open-interest ranking for a perp symbol (e.g. BTCUSDT): OI in coins and USD, market share %, 1h/4h/24h OI change % and USD flow, and OI / 24h-volume ratio per exchange, plus market totals.
get_open_interestLatest open interest (contracts and USD) per exchange/symbol.
get_open_interest_history[measured] Open interest over time for one contract, one row per venue per time bucket: ts (ms), exchange, oi (coins, one side), oi_usd. Use it to see how positioning built up or unwound; for the current snapshot with shares and 1h/4h/24h changes use get_oi_board, for every contract at once get_open_interest. symbol: BASEUSDT (BTCUSDT). minutes: look-back window, 5 to 20160 (14 days); snapped to a fixed set of windows.
get_orderbook_heatmap[measured] Resting limit orders over time on ONE exchange: cells of (time bucket, price bucket, quantity in coins) from archived order-book snapshots, with price_min, price_max, price_step and time_step (seconds) describing the grid. Shows where bid and ask walls stood and when they were pulled; not liquidations (see get_liquidation_heatmap for those) and not trades (get_footprint). exchange: binance | bybit | okx. symbol: BTCUSDT, ETHUSDT or SOLUSDT only. minutes: 1 to 1440.
get_positioning_regimePer-coin positioning regime from price direction crossed with open interest. price up + OI up = new longs; price up + OI down = short covering (a rally with no new buyers); price down + OI up = new shorts; price down + OI down = long flush. Returns a market summary (coins and net OI per regime) plus per coin the price change, OI change and current OI over the window.
get_spoofingOrder-book wall lifecycle heuristic: large levels classified as active_wall / absorbed / pulled_wall / suspected_spoof based on whether trades executed into them before they vanished.
get_stocksCrypto-related equities (COIN, MSTR, miners) and spot BTC/ETH ETF quotes: price, day change %, range, volume. ~15-min delayed.
get_tokenized_stocks[measured] Tokenized stocks, indices, ETFs, commodities, FX, rates and pre-IPO names traded as PERPS on DEXs (Lighter and Hyperliquid builder markets): one row per underlying (NVDA, TSLA, S&P 500, Gold, EUR/USD, Anthropic...) with every venue's mark, open interest, 24 h volume, funding APR and the price gap between venues in bps. asset_class filters: equity | crypto_equity | etf | index | commodity | fx | rates | preipo. Use get_hl_builder_markets for the raw Hyperliquid HIP-3 list by dex.
get_token_unlocksUpcoming token unlock events for pool coins, nearest first: next unlock timestamp and token amount per public vesting schedule.
get_top_tradersTop lead traders (OKX copy trading, public data): total PnL, win rate, AUM, copiers, live open positions (pair, side, leverage, entry, uPnL) and recently closed trades with realized PnL.
list_alertsThe webhook alert subscriptions that belong to the caller's API key (read-only): id, type, url, filters (symbol, min_usd, x_normal, max_dist_pct) and delivery health: last_status (HTTP code or error of the last delivery), fails (consecutive failures; a subscription pauses itself at 20) and active. Call it to find the id for delete_alert or to check why alerts stopped arriving. Needs a Pro or Bot key, from the MCP connection's X-API-Key header or the api_key argument; without one it returns an error object, not an exception.
list_history_packages[measured] Monthly Parquet history packages for backtests: liquidations (11 venues), funding hourly and settlements, open interest hourly, Hyperliquid and Lighter positions with liquidation prices — one file per dataset per month since 2026-07 with rows, bytes and sha256. Each entry has `url` (download with the API key in X-API-Key) and `available` for the caller's tier: Pro = this month and the previous one, Bot = all, free = none (use get_history for the last 24 h).
list_markets[measured] What exists: every venue we track and, for each, the contracts with live open interest right now (BASEUSDT symbols), plus the top-100 coin pool. Call this first when unsure which symbol or exchange string another tool accepts.

Schemas: list_tools.

Similar MCP servers

Official server.json
{
  "name": "app.liquidvision/derivatives",
  "title": "LiquidVision — Crypto Derivatives Data",
  "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
  "remotes": [
    {
      "url": "https://liquidvision.app/mcp",
      "type": "streamable-http",
      "headers": [
        {
          "name": "X-API-Key",
          "isSecret": true,
          "description": "Optional. A free key raises the rate limit; Pro/Bot keys unlock history exports and alerts."
        }
      ]
    }
  ],
  "version": "1.3.0",
  "repository": {
    "url": "https://github.com/lv-analytics/liquidvision-mcp",
    "source": "github"
  },
  "websiteUrl": "https://liquidvision.app",
  "description": "Exchange-exact crypto derivatives data for AI agents: OI, funding, liquidations, 13 venues, 42 tools"
}