Every change Wellknown observed on this MCP server, newest first, with what it was before and what it became. Tool-surface changes carry the definition diff. Nothing here is edited after the fact.
Changed the definition of "security.contract_health_audit" and "security.token_diagnostic"
⟨57 unchanged words⟩ "type":["string","null"]},"top5_unlocked_holder_pct":{"description":"Sum of the top 5 non-locked/non-burned LP holders - catches concentration spread across several wallets that top_unlocked_holder_pct (single largest holder only) would miss.","type":["number","null"]},"top_unlocked_holder_pct":{"type":["number","null" ⟨9 unchanged words⟩
⟨89 unchanged words⟩ "type":["string","null"]},"top5_unlocked_holder_pct":{"type":["number","null"]},"top_unlocked_holder_pct":{"type":["number","null" ⟨12 unchanged words⟩
Added "prediction.hip4_price_ladder" (15 tools before, 16 now)
Use this tool to see one underlying's Hyperliquid HIP-4 'above $X' price-binary markets laid out as a strike-sorted ladder, each rung with its live Yes probability - e.g. to read the market's implied BTC price distribution at a glance. Reuses the same cached data as prediction.hip4_snapshot - no new upstream call. No volume field (Hyperliquid doesn't expose per-outcome volume for HIP-4). Do not use for mutually-exclusive multi-outcome groups (use prediction.hip4_snapshot's grouped_questions instead) or for Polymarket data. Paid in USDC on Base.
Added "prediction.hip4_snapshot" (14 tools before, 15 now)
Real-time probability snapshot of Hyperliquid's HIP-4 outcome (prediction) markets - crypto price binaries, sports game winners, tournament winners, Fed rate decisions, and any other market type Hyperliquid adds, all in one call. No curated market list - every field under 'fields' on each row is parsed verbatim from Hyperliquid's own description string, so new HIP-4 market types appear automatically. standalone_markets covers two-sided markets (most crypto/sports games); grouped_questions covers mutually-exclusive multi-outcome groups (e.g. a league winner) with a fallback price for 'none of …
Certificate changed, valid to 2026-12-20
Changed the definition of "market.kimchi_alert"
⟨65 unchanged words⟩ or on-chain DEX swaps. Paid in USDC onBase.Base (free while KIMCHI_ALERT_ENABLED=false).
Changed the definition of "arb.spread_matrix", "derivatives.funding_rate", "derivatives.whale_position_audit" and 7 more
⟨42 unchanged words⟩ cost. Returns gross/net spread percentages and an is_profitableboolean.boolean - note net_spread_pct does NOT subtract the DEX pool's own swap fee (see pool_fee_pct), CEX trading fees, or slippage, so a spread that clears the threshold before those costs may not clear it after. Do not use for DEX-only liquidity depth checks ⟨8 unchanged words⟩
⟨54 unchanged words⟩ "type":["string","null"]},"pool_fee_pct":{"description":"DEX pool's fee tier (e.g. 0.05 for 0.05%), parsed from the pool name. Informational only - net_spread_pct does not subtract it.","type":["number","null"]},"status_message":{"type":"string"},"symbol" ⟨17 unchanged words⟩
Certificate recorded, valid to 2026-10-22
Authorization not required
First tool surface recorded: 14 tools (server version 1.0.0)
Showing the latest 9 events. The API returns up to 500 and filters by kind: ?kind=tool_surface_changed
⟨22 unchanged words⟩ (primary) and Binance (fallback) perpetual fundingrates.rates, plus mark_price/index_price (both paths) and open_interest_usd (Bybit path only - null on the Binance fallback). Do not use for spot market volume or ⟨8 unchanged words⟩
⟨26 unchanged words⟩ ,"kst"],"type":"object"},"index_price":{"description":"Underlying spot index price feeding the perpetual's funding calculation. Populated on both the Bybit and Binance paths.","type":["number","null"]},"mark_price":{"description":"Perpetual futures mark price at lookup time. Populated on both the Bybit and Binance paths.","type":["number","null"]},"next_funding_time":{"anyOf":[{"properties":{" ⟨13 unchanged words⟩ }]},"notice":{"type":["string","null"]},"open_interest_usd":{"description":"Total open interest in USD notional. Only available via the Bybit path - always null on the Binance fallback, since Binance's premiumIndex endpoint does not report open interest.","type":["number","null"]},"predicted_rate":{"type" ⟨11 unchanged words⟩
⟨14 unchanged words⟩ perpetual position with side, size, leverage, max_leverage, unrealized PnL, return_on_equity_pct, liquidation price, and distance-to-liquidationpercentage.percentage (max_leverage and return_on_equity_pct are Hyperliquid's own reported fields, not derived by this tool). This does not discover or rank 'smart money' ⟨47 unchanged words⟩
⟨58 unchanged words⟩ "type":["number","null"]},"max_leverage":{"description":"Hyperliquid's own reported leverage ceiling for this asset/account setting - not the leverage actually in use.","type":["number","null"]},"position_value_usd":{"type":["number","null"]},"return_on_equity_pct":{"description":"Hyperliquid's own reported ROE for this position, as a percentage - not derived by this tool.","type":["number","null"]}," ⟨49 unchanged words⟩
{"properties":{"assumed_gas_cost_usd":{"description":"Flat per-swap gas estimate for this network, not a live gas quote.","type":["number","null"]},"data_source":{"type":"string"},"estimated_slippage_pct" ⟨28 unchanged words⟩ "type":["string","null"]},"pool_fee_pct":{"description":"Swap fee tier of the selected pool, parsed from pool_name. Disclosed for reference only - not subtracted from the slippage estimate.","type":["number","null"]},"pool_name":{"type":["string","null"]},"price_impact_model":{"type":"string"},"quote_token_is_stablecoin":{"description":"If false or null, this pool isn't USD-quoted - an extra hop is needed to reach USD, not accounted for in the slippage estimate.","type":["boolean","null"]},"quote_token_symbol":{"description":"Parsed from pool_name (e.g. 'USDC' from 'WETH / USDC 0.05%').","type":["string","null"]},"slippage_tiers":{"items":{"properties": ⟨37 unchanged words⟩
⟨9 unchanged words⟩ the 'kimchi premium', Upbit price gaps vsBinance/OKXa global reference price, cross-border crypto arbitrage, or sudden Korea-specific price anomalies. Real-time Upbit vsglobalCoinbasepricespotspread(CoinGecko fallback) - NOT a live Binance orderbook, despite the legacy binance_price_usdt field name kept for backward compatibility - with reverse-premium and surge alerts. Do not use ⟨14 unchanged words⟩
⟨12 unchanged words⟩ ,"type":"object"},"binance_price_usdt":{"description":"Legacy field name kept for backward compatibility - NOT a live Binance price, see notice/cex_price_source.","type":"number"},"cex_price_source":{"type":"string"},"cex_reference_price_usdt":{"description":"Same value as binance_price_usdt under an honestly-named field.","type":"number"},"generated_at":{"properties":{"kst":{"type ⟨8 unchanged words⟩ "object"},"kimchi_premium_pct":{"type":"number"},"notice":{"type":"string"},"premium_change_1h_pct":{"type":"number"} ⟨34 unchanged words⟩
⟨37 unchanged words⟩ - a live snapshot, not historical liquidity. Also returns book_snapshot_time (the book's own reported timestamp) and Polymarket's own tick_size/min_order_size for this market (null if the book response didn't include them). Accepts either a raw token_id or a market_slug ⟨31 unchanged words⟩
⟨6 unchanged words⟩ "type":["number","null"]},"book_snapshot_time":{"anyOf":[{"properties":{"kst":{"type":"string"},"utc":{"type":"string"}},"required":["utc","kst"],"type":"object"},{"type":"null"}],"description":"The order book's own reported snapshot timestamp, so you can judge how fresh this read is."},"data_source":{"type":"string"},"executable" ⟨19 unchanged words⟩ ,"max_executable_shares":{"type":"number"},"min_order_size":{"description":"Polymarket's own reported minimum order size for this market. Null if the book response didn't include it.","type":["number","null"]},"notice":{"type":["string","null" ⟨7 unchanged words⟩ "]},"side":{"type":"string"},"tick_size":{"description":"Polymarket's own reported minimum price increment for this market. Null if the book response didn't include it.","type":["number","null"]},"token_id":{"type":"string"}} ⟨10 unchanged words⟩
⟨46 unchanged words⟩ now, so this isn't just a top-of-bookmirage.mirage - note *_capacity_notional_usd still prices that size at top-of-book (optimistic), so use *_capacity_vwap_notional_usd for the realistic fill cost. Also returns oldest_book_snapshot_time, the staleness bottleneck across all legs. Polymarket only. Do not use for binary Yes/No ⟨20 unchanged words⟩
⟨19 unchanged words⟩ ,"buy_basket_capacity_shares":{"type":"number"},"buy_basket_capacity_vwap_notional_usd":{"description":"Volume-weighted price of filling buy_basket_capacity_shares by walking the order book depth, instead of pricing it at top-of-book like buy_basket_capacity_notional_usd does - more realistic actual fill cost.","type":["number","null"]},"buy_basket_gross_edge_usd":{"type":["number","null" ⟨27 unchanged words⟩ ,"num_outcomes":{"type":"integer"},"oldest_book_snapshot_time":{"anyOf":[{"properties":{"kst":{"type":"string"},"utc":{"type":"string"}},"required":["utc","kst"],"type":"object"},{"type":"null"}],"description":"The oldest of each leg's own order-book snapshot timestamp - the staleness bottleneck across all legs, since the whole basket calculation is only as fresh as its stalest leg. Null if no leg reported a timestamp."},"opportunity":{"type":"string"},"sell_basket_capacity_notional_usd" ⟨3 unchanged words⟩ "]},"sell_basket_capacity_shares":{"type":"number"},"sell_basket_capacity_vwap_notional_usd":{"type":["number","null"]},"sell_basket_gross_edge_usd":{"type":["number", ⟨17 unchanged words⟩
Use this toolforright before buying or swapping an unfamiliar token when you need a single-call combined security check: runs security.token_risk ⟨80 unchanged words⟩
⟨26 unchanged words⟩ backdoors. GoPlus/Honeypot.is-backed security audit for a given contractaddress.address - beyond is_honeypot, also surfaces individual GoPlus risk signals (cannot_buy, cannot_sell_all, hidden_owner, transfer_pausable, selfdestruct, is_blacklisted, slippage_modifiable, owner_percent) into risk_flags, plus is_proxy/trading_cooldown as informational-only fields (not flagged, since both are common in legitimate contracts). All of these are null when the Honeypot.is fallback path is used. Do not use for market price discovery or ⟨7 unchanged words⟩
⟨2 unchanged words⟩ "type":["number","null"]},"cannot_buy":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"cannot_sell_all":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"chain_id":{"type":"integer"},"contract_address" ⟨15 unchanged words⟩ ,"kst"],"type":"object"},"hidden_owner":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"holder_count":{"type":["integer","null"]},"is_blacklisted":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"is_honeypot":{"type":["boolean","null" ⟨9 unchanged words⟩ "type":["boolean","null"]},"is_proxy":{"description":"GoPlus-only, null on Honeypot.is fallback. Informational only - does not feed risk_flags.","type":["boolean","null"]},"notice":{"type":["string","null"]},"owner_address":{"type":["string","null"]},"owner_percent":{"description":"Owner's % of total supply, GoPlus-only. Feeds 'high_owner_concentration' risk_flag at >=50%.","type":["number","null"]},"owner_renounced":{"type":["boolean","null" ⟨6 unchanged words⟩ ,"risk_level":{"type":"string"},"selfdestruct":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"sell_tax_pct":{"type":["number","null"]},"slippage_modifiable":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]},"token_name":{"type":["string","null"]},"token_symbol":{"type":["string","null"]},"trading_cooldown":{"description":"GoPlus-only, null on Honeypot.is fallback. Informational only - does not feed risk_flags.","type":["boolean","null"]},"transfer_pausable":{"description":"GoPlus-only, null on Honeypot.is fallback. Feeds risk_flags.","type":["boolean","null"]}},"required":["generated_at ⟨7 unchanged words⟩
Use this tool to evaluate tokenunlockunlock/vestingschedulessupply overhang risk before taking mid-to-long term positions - returns tokens whose currently-locked or unlock-eligible supply exceeds a materiality threshold,vestingeachcliffswith a computed risk_level (LOW/MEDIUM/HIGH). Default data source (on-chain Sablier vesting,andtheupcomingcurrentVC/teamconfigurationdump-pressurenorelativeDropsTabtokeycirculatingset)supply.doesAnalyzesNOTsupplyclassifyoverhangVC/teamriskvs.beforeothertakingholdersmid-to-long(is_insider_vc_teamtermispositions.alwaysDonull)notandusedoesforNOTintra-dayprovideslippageexactorunlockreal-timetimingtransaction(days_until_unlocksimulation.isFREEalwaysONBOARDINGnull,TOOLtiming_precision='pending_schema_verification') -Zeroitpaymentonlyrequiredreportsbythedefault.currently-lockedKeptsupplyfreeratio.soItautonomousdoesagentsreportcanvesting_deposit_amount/vesting_withdrawn_amountverify(Sablier'snetworkownconnectivitydepositAmount/withdrawnAmount,latency,aggregated across streams) andoutputvesting_progress_pctschema(withdrawn/depositvalidity*before100),initiatingshowingx402howpaidfarpipelines.along the vesting schedule already is. Treat a null value as 'unknown', never as 'no risk'. Always check the response's coverage_notice field. Do not use for intra-day slippage or real-time transaction simulation. Paid in USDC on Base (free while DUMP_RISK_ENABLED=false).
⟨75 unchanged words⟩ ,"unlock_supply_pct":{"type":"number"},"vesting_deposit_amount":{"description":"On-chain-only field (Sablier's depositAmount, aggregated across streams). Total amount originally scheduled to vest. Null on the DropsTab path and when unavailable.","type":["number","null"]},"vesting_progress_pct":{"description":"On-chain-only field: vesting_withdrawn_amount / vesting_deposit_amount * 100 - how far along the vesting schedule already is. Null on the DropsTab path and when deposit data wasn't available.","type":["number","null"]},"vesting_withdrawn_amount":{"description":"On-chain-only field (Sablier's withdrawnAmount, aggregated across streams). Amount already claimed/withdrawn so far. Null on the DropsTab path and when unavailable.","type":["number","null"]},"volume_impact_pct":{"type":["number","null" ⟨21 unchanged words⟩