PredMCP
Polymarket + Hyperliquid + macro for AI agents. 38 tools, signal backtest, SSE streaming. Free tier.
Sollte ich dies verwenden
Qualität und Sicherheit
Befunde (10)
- HIGH
- MEDIUMin get_outcome_edges
- MEDIUMin get_news_signals
- LOWin get_odds
- LOWin get_funding_rates
- LOWin get_whale_trades
- LOWin get_market_edge
- LOWin get_cex_outflows
- INFOin get_outcome_edges
- INFOin get_news_signals
Basierend auf einer automatisierten Analyse der Tool-Definitionen und der Einhaltung des Protokolls.
Kontextkosten
Dies ist die ungefähre Anzahl der Tokens, die jedes Mal verbraucht werden, wenn die Tools des Servers in den Kontext eines Modells geladen werden. Höhere Werte verringern die Aufmerksamkeit, die für andere Aufgaben verfügbar ist.
Installieren
Installation mit einem Klick
Fügen Sie dies Ihrer Datei `claude_desktop_config.json` hinzu:
{
"mcpServers": {
"predmcp": {
"url": "https://predmcp.com/mcp"
}
}
}Remote-Endpunkte
https://predmcp.com/mcpstreamable-httpWas es kann
Tool-Inventar
Tools (52)
🟡create_api_key(email)
Generate a free PredMCP API key. Requires an email. Returns the key and ready-to-use MCP config. Free tier: 100 calls/day, one key per IP.
Eingabe-Schema
{
"type": "object",
"properties": {
"email": {
"type": "string",
"format": "email",
"description": "Your email address — used to identify your key and for account recovery"
}
},
"required": [
"email"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_markets(platform, limit, active)
Live prediction markets from Polymarket and/or HIP-4, sorted by volume. Returns title, YES/NO prices, 24h volume, and expiry.
Eingabe-Schema
{
"type": "object",
"properties": {
"platform": {
"type": "string",
"enum": [
"polymarket",
"hip4",
"all"
],
"default": "all",
"description": "Data source: \"polymarket\", \"hip4\", or \"all\" (default)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 20,
"description": "Number of markets to return (1–100, default: 20)"
},
"active": {
"type": "boolean",
"default": true,
"description": "Filter to active/open markets only (default: true)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_odds(platform, identifier)
Current YES/NO prices and implied probability for any Polymarket or HIP-4 market token.
Eingabe-Schema
{
"type": "object",
"properties": {
"platform": {
"type": "string",
"enum": [
"polymarket",
"hip4"
],
"description": "Platform the market is on: \"polymarket\" or \"hip4\""
},
"identifier": {
"type": "string",
"description": "For Polymarket: the token_id of the YES or NO outcome. For HIP-4: the base asset ticker (e.g. \"BTC\")"
}
},
"required": [
"platform",
"identifier"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_orderbook(token_id)
Full orderbook depth (bids + asks) for any Polymarket market token. Shows liquidity at each price level.
Eingabe-Schema
{
"type": "object",
"properties": {
"token_id": {
"type": "string",
"description": "Polymarket token ID for the YES or NO side of a market"
}
},
"required": [
"token_id"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢search_markets(query, limit)
Full-text search across all Polymarket and HIP-4 prediction markets. Returns ranked results with current odds.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Keywords to search in market names and descriptions, e.g. \"bitcoin ETF\", \"US election\", \"Fed pivot\""
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 10,
"description": "Maximum number of results to return (1–50, default: 10)"
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_whale_positions(user, condition_id, min_size_usdc)
Positions of a specific Polymarket wallet, optionally filtered to one market. The /positions API requires a user (no public "all holders by market" endpoint), so pass the wallet address of the trader you want to inspect.
Eingabe-Schema
{
"type": "object",
"properties": {
"user": {
"type": "string",
"description": "Polygon wallet address (0x…) of the user whose positions you want."
},
"condition_id": {
"type": "string",
"description": "Optional — filter results to a specific market by condition_id."
},
"min_size_usdc": {
"type": "number",
"default": 1000,
"description": "Minimum position size in USDC to include in results (default: 1,000)."
}
},
"required": [
"user"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_movers(limit)
Top prediction markets ranked by 24h volume spike or biggest YES/NO price swing. Surfaces breaking news bets and momentum plays across Polymarket and HIP-4.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 10,
"description": "Number of top movers to return (1–20, default: 10)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_markets_near_resolution(hours, min_prob)
Polymarket markets resolving within the next N hours with a leading probability above threshold. Useful for resolution arbitrage and last-minute positioning.
Eingabe-Schema
{
"type": "object",
"properties": {
"hours": {
"type": "number",
"minimum": 0.5,
"maximum": 168,
"default": 24,
"description": "Maximum hours until resolution (default: 24h, max: 168h = 7 days)"
},
"min_prob": {
"type": "number",
"minimum": 0,
"maximum": 1,
"default": 0.7,
"description": "Minimum leading outcome probability to include (default: 0.7 = 70%)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_volume_spikes(min_ratio, limit)
Polymarket markets with abnormal 24h volume vs their 7-day daily average. Volume spikes typically precede news events or informed positioning.
Eingabe-Schema
{
"type": "object",
"properties": {
"min_ratio": {
"type": "number",
"minimum": 1,
"default": 3,
"description": "Minimum ratio of 24h volume vs 7-day daily average to qualify as a spike (default: 3x)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 15,
"description": "Number of results to return (default: 15)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_late_game_sports(certainty_pct, hours_max)
Sports prediction markets on Polymarket closing within a few hours with a high-certainty leading outcome. Targets near-certain resolution for late-game positioning.
Eingabe-Schema
{
"type": "object",
"properties": {
"certainty_pct": {
"type": "number",
"minimum": 50,
"maximum": 99,
"default": 85,
"description": "Minimum leading outcome probability as percentage, e.g. 85 = 85% (default: 85)"
},
"hours_max": {
"type": "number",
"minimum": 0.5,
"maximum": 24,
"default": 6,
"description": "Maximum hours until market closes (default: 6h)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_funding_rates(coins)
Current funding rates for Hyperliquid perpetuals. Positive rate = longs pay shorts (bearish bias); negative = shorts pay longs (bullish bias).
Eingabe-Schema
{
"type": "object",
"properties": {
"coins": {
"type": "array",
"items": {
"type": "string"
},
"description": "List of asset tickers to fetch, e.g. [\"BTC\", \"ETH\"]. Omit to fetch all available assets."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_whale_trades(coin, min_notional_usdc)
Recent large trades on Hyperliquid perps above a notional threshold. Includes side (long/short), size, price, and timestamp.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Asset ticker to fetch whale trades for, e.g. \"BTC\", \"ETH\""
},
"min_notional_usdc": {
"type": "number",
"default": 50000,
"description": "Minimum trade size in USDC to qualify as a whale trade (default: 50,000)"
}
},
"required": [
"coin"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_top_funding_rates(limit, min_abs_rate)
Top Hyperliquid perps ranked by absolute funding rate, with OI and annualized yield. Useful for finding the most overcrowded longs/shorts and carry opportunities.
Eingabe-Schema
{
"type": "object",
"properties": {
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 10,
"description": "Number of top results to return (default: 10)"
},
"min_abs_rate": {
"type": "number",
"default": 0,
"description": "Minimum absolute funding rate to include, e.g. 0.0001. Omit to include all."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_oi_near_cap
Lists Hyperliquid perps that are currently at the open interest cap — new long positions cannot be opened. Use as a blacklist to avoid getting rejected on entry.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_orderbook_depth(coin, size_usdc, side)
Full orderbook depth + slippage estimate for any Hyperliquid perp or HIP-4 market. Returns top of book, spread, cumulative depth at $100/$500/$1k/$5k tiers, and estimated slippage for a given order size. Critical for HIP-4 farming and low-liquidity assets where market orders get destroyed by slippage.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Asset ticker (BTC, ETH, SOL) or HIP-4 contract name (e.g. \"BTC>81041@20260512-0600\")"
},
"size_usdc": {
"type": "number",
"minimum": 10,
"maximum": 1000000,
"default": 200,
"description": "Order size in USDC to estimate slippage for (default: 200)"
},
"side": {
"type": "string",
"enum": [
"buy",
"sell"
],
"default": "buy",
"description": "Order side: \"buy\" (taker into asks) or \"sell\" (taker into bids)"
}
},
"required": [
"coin"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_price_summary(asset)
One-call snapshot for an asset: mark price, 24h and 7d returns, 30d high/low, drawdown from high, rally from low, annualized realised volatility. Computed from 30d of HL hourly candles.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"BTC\", \"HYPE\""
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_basic_macro
DXY, US10Y yield, S&P 500, gold, VIX — direct from free Yahoo Finance. Raw values + 1d change. Pro adds BTC dominance, ETH/BTC, total crypto mcap, and a RISK_ON/OFF regime classifier.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_recent_news(asset, hours_back, limit)
Recent crypto news headlines matching an asset ticker, from CoinDesk + The Block + Decrypt + Cointelegraph RSS feeds. Pro adds the 1h price move that followed each headline.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker to filter on, e.g. \"BTC\", \"ETH\", \"HYPE\""
},
"hours_back": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24,
"description": "Lookback window in hours (default: 24, max: 168 = 7 days)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 30,
"default": 10,
"description": "Max headlines returned (default: 10)"
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_news_feed(hours_back, category, limit)
Recent headlines across crypto, finance and sports RSS feeds, unfiltered and unclassified. Unlike get_recent_news it does not filter by asset ticker, so it also covers the sports, macro and event markets that make up most of a HIP-4 board. Match the headlines against your own market list.
Eingabe-Schema
{
"type": "object",
"properties": {
"hours_back": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24,
"description": "Lookback window in hours (default 24, max 168)."
},
"category": {
"type": "string",
"enum": [
"crypto",
"finance",
"sports",
"all"
],
"default": "all",
"description": "Restrict to one feed category (default: all)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 40,
"description": "Max headlines returned (default 40, max 100)."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_simple_iv(asset)
BTC or ETH options snapshot via free Deribit public feed: ATM implied volatility, total OI, 24h volume. Pro adds put-call skew + full term structure parsing.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"enum": [
"BTC",
"ETH"
],
"description": "Underlying — Deribit free feed supports BTC and ETH."
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_outcome_fair_value(asset, strike, expiry_iso, comparator, strike_high, ...)
Options/vol-implied fair value for a HIP-4 binary/range/touch PRICE market ("<asset> above $X at time T?"). Returns the risk-neutral probability the market resolves YES, and — if you pass market_yes_price — the signed edge in probability points and a YES cheap/rich/fair verdict. BTC/ETH price off the live Deribit IV smile (interpolated to strike + DTE); ANY other asset falls back to Hyperliquid 30d realized vol. iv_source labels which was used (smile/term_interp/skew_adj/atm/realized_vol). The touch case uses the correct drifted first-passage formula. Approximations are listed in caveats.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Underlying ticker, e.g. \"BTC\", \"ETH\", \"SOL\", \"HYPE\". BTC/ETH use the Deribit IV smile; others use Hyperliquid realized vol."
},
"strike": {
"type": "number",
"exclusiveMinimum": 0,
"description": "The market's strike / threshold price, e.g. 70000."
},
"expiry_iso": {
"type": "string",
"description": "Market resolution time as an ISO 8601 string, e.g. \"2026-08-21T06:00:00Z\"."
},
"comparator": {
"type": "string",
"enum": [
"above",
"below",
"range",
"touch"
],
"description": "Market shape: above/below a strike, inside a range [strike, strike_high], or touches the strike before expiry."
},
"strike_high": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Upper bound for range markets (must be > strike). Ignored otherwise."
},
"market_yes_price": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Current on-chain YES price (0..1) to compute the edge against fair value."
}
},
"required": [
"asset",
"strike",
"expiry_iso",
"comparator"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_outcome_edges(min_edge_pt, underlying, limit)
One-call mispricing scanner for autonomous agents: every live HIP-4 PRICE market, each priced against its options/vol-implied fair value and ranked by |edge|. BTC/ETH use the Deribit IV smile; other assets use Hyperliquid realized vol (iv_source labels which). edge_pt = (implied_prob - yes_price)*100, computed only where a real traded YES price exists (synthetic/untraded 0.5 placeholders return edge_pt:null so no fake edge is surfaced). Filter with min_edge_pt / underlying. The whole board without looping.
Eingabe-Schema
{
"type": "object",
"properties": {
"min_edge_pt": {
"type": "number",
"minimum": 0,
"maximum": 100,
"default": 0,
"description": "Only return markets whose |edge| in probability points is at least this (default 0 = the whole board)."
},
"underlying": {
"type": "string",
"description": "Filter to one underlying ticker, e.g. \"BTC\"."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 30,
"description": "Max markets to return (default 30, max 100)."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_market_edge(question, yes_price, underlying, strike, strike_high, ...)
Universal fair-value anchor for ONE market of ANY category. Pass the question (+ optional strike/comparator/expiry/underlying for price markets, + yes_price). Dispatches to the best anchor: options/vol fair value (crypto price), a confident Polymarket twin (events/politics/sports), or a soft news lean. Returns { method, confidence, anchor_prob, hip4_yes, edge_pt, verdict, source_ref, note }. edge_pt = (anchor_prob - hip4_yes)*100; positive = YES cheap; null for untraded/synthetic prices.
Eingabe-Schema
{
"type": "object",
"properties": {
"question": {
"type": "string",
"description": "The market question, e.g. \"BTC above $70,000 at Aug 21 06:00 UTC?\" or \"Will Fed cut rates in September?\""
},
"yes_price": {
"type": "number",
"minimum": 0,
"maximum": 1,
"description": "Current on-chain YES price (0..1). Edge is only computed for a real traded price (0.5 exactly is treated as synthetic/untraded)."
},
"underlying": {
"type": "string",
"description": "Underlying ticker for price markets, e.g. \"BTC\"."
},
"strike": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Strike/threshold for price markets."
},
"strike_high": {
"type": "number",
"exclusiveMinimum": 0,
"description": "Upper bound for range price markets."
},
"comparator": {
"type": "string",
"enum": [
"above",
"below",
"range",
"touch"
],
"description": "Price-market shape."
},
"expiry_iso": {
"type": "string",
"description": "Resolution time (ISO 8601) for price markets."
},
"vol_24h": {
"type": "number",
"minimum": 0,
"description": "24h traded volume of the market. REQUIRED for an edge/verdict: absent (or 0) the YES price is treated as untraded and only the anchor is returned."
},
"is_traded": {
"type": "boolean",
"description": "Explicit attestation that the YES price comes from a real traded book. Alternative to vol_24h."
}
},
"required": [
"question"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_market_edges(method, min_edge_pt, limit)
One-call universal mispricing scanner across ALL HIP-4 market types (crypto price, sports, politics, macro, events). Resolves every market to its best anchor (options / Polymarket twin / news lean / none) and ranks by |edge|. Filter with method / min_edge_pt / limit. Returns by_method counts + ranked markets. Superset of get_outcome_edges.
Eingabe-Schema
{
"type": "object",
"properties": {
"method": {
"type": "string",
"enum": [
"options",
"polymarket",
"odds",
"news"
],
"description": "Filter to markets resolved via one anchor method. Passing \"news\" also enables the (slower) news lean."
},
"min_edge_pt": {
"type": "number",
"minimum": 0,
"maximum": 100,
"default": 0,
"description": "Only return markets whose |edge| in probability points is at least this (default 0 = whole board)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"default": 30,
"description": "Max markets to return (default 30, max 100)."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_news_signals(hours, event_type, min_confidence, limit)
News → markets recommender: pulls recent crypto headlines, classifies each event type (depeg/hack_exploit/listing/delisting/unlock/regulatory/partnership/outage/hype/fud/macro), extracts the assets, maps to affected HIP-4 markets, and assigns a directional lean (YES up / YES down). Heuristic, low/medium confidence, NOT financial advice; war/hard-politics excluded. Powers a live "event → affected markets → lean" feed. Filter with hours / event_type / min_confidence / limit.
Eingabe-Schema
{
"type": "object",
"properties": {
"hours": {
"type": "integer",
"minimum": 1,
"maximum": 72,
"default": 24,
"description": "Lookback window for headlines (default 24h, max 72h)."
},
"event_type": {
"type": "string",
"enum": [
"depeg",
"hack_exploit",
"delisting",
"listing",
"unlock",
"outage",
"regulatory",
"partnership",
"hype",
"fud",
"macro"
],
"description": "Filter to one event type."
},
"min_confidence": {
"type": "string",
"enum": [
"low",
"medium"
],
"description": "Minimum confidence to include (default: low)."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 20,
"description": "Max signals to return (default 20, max 50)."
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_recent_signals(since_id, coin, limit)
Server-detected events from the last hour: funding outliers (≥3x 7d baseline), whale trades (≥$100k), OI caps reached. Cursor-based — pass next_cursor back as since_id to receive only new events. The polling equivalent of the /sse/signals stream. Pro tool get_signal_history covers 7 days with forward-return outcomes.
Eingabe-Schema
{
"type": "object",
"properties": {
"since_id": {
"type": "integer",
"description": "Cursor from a previous call — returns only events with id > since_id. Omit on first call."
},
"coin": {
"type": "string",
"description": "Filter to one coin, e.g. \"BTC\""
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 20,
"description": "Max events (free tier cap: 20)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_oi_history(coin, hours)
Open-interest time series for a coin over the last 24h, from our continuous 5-min collector. Hyperliquid has NO OI-history endpoint — this data exists only on predmcp. Includes price + funding at each point. Pro tool get_oi_divergence classifies price-vs-OI regimes (squeeze/liquidation/new positioning) across all coins.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Coin, e.g. \"BTC\" (top ~30 by OI are tracked)"
},
"hours": {
"type": "integer",
"minimum": 1,
"maximum": 24,
"default": 24,
"description": "Lookback window in hours (free tier max: 24)"
}
},
"required": [
"coin"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_market_regime
One-call market regime classifier: RISK_ON_TRENDING / RISK_OFF / SQUEEZE_RISK / CHOP_LOW_VOL / MIXED. Combines BTC trend + realized vol, Deribit IV premium, funding breadth, and OI-weighted crowding across the top 50 perps. Call this FIRST each session to condition strategy choice.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_market_context(query)
Unified intelligence snapshot for any topic, asset, or keyword: all matching Polymarket and HIP-4 prediction markets combined with live Hyperliquid perp data (price, funding, OI). One call replaces 3+ separate lookups.
Eingabe-Schema
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Topic, asset, or keyword to look up — e.g. \"BTC\", \"Iran\", \"Fed rate cut\", \"Trump\""
}
},
"required": [
"query"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_pm_hl_divergences(min_pct, limit)
Markets where Polymarket implied probability diverges from Hyperliquid perpetual funding direction — e.g. PM prices bullish outcome but HL funding shows crowded longs (bearish pressure). The hardest signal to compute manually.
Eingabe-Schema
{
"type": "object",
"properties": {
"min_pct": {
"type": "number",
"minimum": 1,
"maximum": 50,
"default": 10,
"description": "Minimum divergence percentage between PM implied probability and HL pricing to flag (default: 10%)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 30,
"default": 15,
"description": "Number of divergences to return (default: 15)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_hip4_vs_pm_arb(min_spread_pct)
Finds the same underlying market priced on both HIP-4 (on-chain Hyperliquid) and Polymarket, flagging spreads above threshold. A spread means one venue is mispriced relative to the other.
Eingabe-Schema
{
"type": "object",
"properties": {
"min_spread_pct": {
"type": "number",
"minimum": 0.5,
"maximum": 20,
"default": 3,
"description": "Minimum spread between HIP-4 and Polymarket YES prices to flag (percentage points, default: 3)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_funding_outliers(days, min_deviation_factor)
Hyperliquid perps whose current funding rate deviates significantly from their 7-day average. A spike vs baseline is a stronger signal than raw rate.
Eingabe-Schema
{
"type": "object",
"properties": {
"days": {
"type": "integer",
"minimum": 1,
"maximum": 30,
"default": 7,
"description": "Historical window in days to compute the baseline average (default: 7)"
},
"min_deviation_factor": {
"type": "number",
"default": 2,
"description": "Minimum ratio of |current_rate| / |avg_rate| to qualify as outlier (default: 2x)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_liquidation_clusters(coin)
Estimated price levels where mass liquidations concentrate for a given Hyperliquid perp, computed from mark price and standard leverage multiples. Higher nearby orderbook liquidity = stronger support/resistance.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Asset ticker to analyze, e.g. \"BTC\", \"ETH\", \"SOL\""
}
},
"required": [
"coin"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_signal_backtest(signal_type, asset, lookback_days, z_score, min_abs_rate, ...)
Find historical instances of a signal type on an asset over the last N days and compute forward returns (1h/4h/24h), win rate, and Sharpe. Lets an agent reason about EV before trading. Killer feature: turns predmcp from data API into edge-proven intelligence.
Eingabe-Schema
{
"type": "object",
"properties": {
"signal_type": {
"type": "string",
"enum": [
"funding_outlier",
"funding_extreme"
],
"description": "Which signal to backtest. funding_outlier = funding >= z×baseline; funding_extreme = abs(funding) >= threshold."
},
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"BTC\", \"HYPE\""
},
"lookback_days": {
"type": "integer",
"minimum": 7,
"maximum": 180,
"default": 90,
"description": "How many days of history to scan (default: 90, max: 180)"
},
"z_score": {
"type": "number",
"minimum": 1,
"maximum": 20,
"default": 3,
"description": "For funding_outlier: minimum deviation factor vs the rolling mean (default: 3×)"
},
"min_abs_rate": {
"type": "number",
"minimum": 0,
"maximum": 0.01,
"default": 0.0005,
"description": "For funding_extreme: minimum absolute funding rate (default: 0.0005 = 0.05%)"
},
"min_separation_hours": {
"type": "integer",
"minimum": 1,
"maximum": 72,
"default": 8,
"description": "Cluster consecutive triggers — at least N hours apart (default: 8h)"
}
},
"required": [
"signal_type",
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_conviction_score(asset, whale_window_minutes, min_whale_notional_usdc)
Aggregates funding outlier, whale imbalance, OI/volume ratio, and momentum into a single directional score (-100 short ↔ +100 long) plus a 0-100 strength score. One call replaces 6+ lookups, returns a clean number for LLM decisions.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker to analyze, e.g. \"BTC\", \"ETH\", \"HYPE\""
},
"whale_window_minutes": {
"type": "integer",
"minimum": 5,
"maximum": 240,
"default": 60,
"description": "Lookback window for whale trades (default: 60min)"
},
"min_whale_notional_usdc": {
"type": "number",
"minimum": 1000,
"maximum": 1000000,
"default": 25000,
"description": "Whale trade threshold in USDC (default: 25,000)"
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_funding_curve_anomaly(asset)
Term-structure analysis of Hyperliquid funding for an asset: current vs 8h avg vs 24h avg vs 7d baseline. Flags spikes, regime shifts, sign contradictions. More nuanced than raw funding rate.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"BTC\", \"HYPE\""
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_setup_quality(asset, direction, size_usdc)
Execution-quality score (0-100, A-F grade) for entering a position right now: spread, slippage at desired size, orderbook depth, volatility regime, trend alignment, support/resistance proximity. Different from conviction (direction) — this scores ENTRY conditions.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"BTC\", \"HYPE\""
},
"direction": {
"type": "string",
"enum": [
"long",
"short"
],
"description": "Trade direction you are considering"
},
"size_usdc": {
"type": "number",
"minimum": 10,
"maximum": 1000000,
"default": 200,
"description": "Order size in USDC to evaluate slippage for (default: 200)"
}
},
"required": [
"asset",
"direction"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_upcoming_catalysts(asset, horizon_hours)
Lists upcoming market catalysts for an asset within a horizon: token unlocks, governance votes (Tally), ETF/SEC deadlines, FOMC dates. Helps agents avoid blind trades into known events. Free data sources (Tally + curated DB).
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"ARB\", \"SOL\", \"BTC\""
},
"horizon_hours": {
"type": "integer",
"minimum": 1,
"maximum": 720,
"default": 168,
"description": "Horizon in hours (default: 168 = 7 days, max: 720 = 30 days)"
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_macro_context
Live macro snapshot: DXY, US10Y yield, S&P 500, gold, VIX (Yahoo Finance free) + BTC dominance, ETH/BTC, total crypto market cap (CoinGecko free). Plus a coarse RISK_ON / RISK_OFF / MIXED regime.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_macro_liquidity
Fiat-to-crypto liquidity gauge: BTC + ETH spot ETF flows (Farside) plus on-chain USDT + USDC mint/burn (Etherscan). Net inflow = bullish for risk assets.
Eingabe-Schema
{
"type": "object",
"properties": {},
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_cex_outflows(window_hours, exchange)
Net ETH outflows across known CEX hot wallets (Binance, Coinbase, OKX, Kraken, Bitfinex) over a window. Outflow = bullish (BTC moving to cold storage). Inflow = distribution pressure. Etherscan free tier.
Eingabe-Schema
{
"type": "object",
"properties": {
"window_hours": {
"type": "number",
"minimum": 1,
"maximum": 168,
"default": 24,
"description": "Lookback window in hours (default: 24h, max: 7d)"
},
"exchange": {
"type": "string",
"enum": [
"Binance",
"Coinbase",
"OKX",
"Kraken",
"Bitfinex",
"all"
],
"default": "all",
"description": "Filter to a single exchange or aggregate all (default: all)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_news_correlation(asset, hours_back)
Recent crypto news headlines mentioning an asset (CoinDesk, The Block, Decrypt, Cointelegraph) paired with the 1h price move that followed each. Lets agents filter news bias.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset ticker, e.g. \"BTC\", \"ETH\", \"HYPE\""
},
"hours_back": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24,
"description": "Lookback window for headlines (default: 24h, max: 7d)"
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_portfolio_risk(positions)
Risk analytics for a list of positions: per-position beta to BTC and ETH, sector concentration, pairwise correlation matrix, portfolio annualized volatility, 1-day 95% parametric VaR. Uses 14d of 1h Hyperliquid candles.
Eingabe-Schema
{
"type": "object",
"properties": {
"positions": {
"type": "array",
"items": {
"type": "object",
"properties": {
"asset": {
"type": "string"
},
"side": {
"type": "string",
"enum": [
"long",
"short"
]
},
"notional_usd": {
"type": "number",
"minimum": 1
}
},
"required": [
"asset",
"side",
"notional_usd"
],
"additionalProperties": false
},
"minItems": 1,
"maxItems": 20,
"description": "Array of positions: { asset, side, notional_usd }. Max 20."
}
},
"required": [
"positions"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_options_iv(asset)
BTC or ETH options snapshot via free Deribit feed: ATM implied volatility, put-call skew, term structure, total OI and 24h volume. Useful as a sentiment gauge — IV high = market expects big moves; skew indicates direction of hedging.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"enum": [
"BTC",
"ETH"
],
"description": "Underlying — Deribit only supports BTC and ETH for the free public feed."
}
},
"required": [
"asset"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_whale_label(address)
Look up an Ethereum address against our curated label DB (CEX hot wallets, known market makers, suspected funds). Lets agents distinguish mechanical MM flow from alpha-generating activity.
Eingabe-Schema
{
"type": "object",
"properties": {
"address": {
"type": "string",
"description": "Ethereum address to look up (0x-prefixed, 40 hex chars)."
}
},
"required": [
"address"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_signal_history(coin, signal_types, hours_back, since_id, limit)
Server-detected signal events over up to 7 days (funding outliers, whale trades ≥$100k, OI caps), each joined with its measured forward returns (1h/4h/24h) once mature. Cursor-based. "What happened last time funding spiked on HYPE — and did it matter?" in one call.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Filter to one coin, e.g. \"BTC\""
},
"signal_types": {
"type": "array",
"items": {
"type": "string",
"enum": [
"funding_outlier_new",
"whale_trade",
"oi_cap_reached"
]
},
"description": "Filter to specific signal types"
},
"hours_back": {
"type": "integer",
"minimum": 1,
"maximum": 168,
"default": 24,
"description": "Lookback window in hours (default 24, max 168 = 7d)"
},
"since_id": {
"type": "integer",
"description": "Cursor — only events with id > since_id"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 200,
"default": 50,
"description": "Max events (default 50)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_signal_performance(signal_type, coin, days)
Hit rates and average forward returns per signal type, measured on OUR actually-emitted production signals (not a backtest reconstruction). Use this to ground win_rate inputs for get_position_size. Sample sizes included — treat n < 10 as anecdotal.
Eingabe-Schema
{
"type": "object",
"properties": {
"signal_type": {
"type": "string",
"enum": [
"funding_outlier_new",
"whale_trade",
"oi_cap_reached"
],
"description": "Filter to one signal type (default: all)"
},
"coin": {
"type": "string",
"description": "Filter to one coin, e.g. \"BTC\""
},
"days": {
"type": "integer",
"minimum": 1,
"maximum": 90,
"default": 30,
"description": "Lookback window (default 30, max 90)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_oi_divergence(coin, hours)
Price-vs-OI regime per coin from our continuous snapshots: NEW_LONGS / SHORT_SQUEEZE / NEW_SHORTS / LONG_LIQUIDATION. Scan all tracked coins or analyze one. Impossible without OI history, which no public API provides — only predmcp records it.
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "One coin (e.g. \"BTC\") — omit to scan all tracked coins"
},
"hours": {
"type": "integer",
"minimum": 1,
"maximum": 2160,
"default": 24,
"description": "Lookback window in hours (default 24, max 90d)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_whale_flow(coin, hours, min_notional_usdc)
Cumulative whale buy/sell imbalance over hours-to-days from the durable trade tape (≥$25k trades persisted continuously, restart-proof). Returns imbalance ratio (-1..+1), BUY/SELL_DOMINANT verdict, and the largest recent prints. Longer horizons than get_whale_trades (1h buffer).
Eingabe-Schema
{
"type": "object",
"properties": {
"coin": {
"type": "string",
"description": "Coin, e.g. \"BTC\" (top ~10 by OI are taped)"
},
"hours": {
"type": "integer",
"minimum": 1,
"maximum": 2160,
"default": 24,
"description": "Lookback window in hours (default 24)"
},
"min_notional_usdc": {
"type": "number",
"minimum": 25000,
"default": 100000,
"description": "Threshold for the sample trades list (tape floor: $25k)"
}
},
"required": [
"coin"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_position_size(asset, direction, bankroll_usdc, win_rate_pct, payoff_ratio, ...)
Turn a signal + bankroll into a concrete position: fractional-Kelly size capped by orderbook liquidity, ATR-based stop, liquidation price at chosen leverage, funding carry cost, and % bankroll at risk. Warns when liquidation sits inside the stop. Ground win_rate_pct with get_signal_performance or get_signal_backtest first.
Eingabe-Schema
{
"type": "object",
"properties": {
"asset": {
"type": "string",
"description": "Asset, e.g. \"BTC\""
},
"direction": {
"type": "string",
"enum": [
"long",
"short"
],
"description": "Trade direction"
},
"bankroll_usdc": {
"type": "number",
"minimum": 10,
"description": "Total capital available in USDC"
},
"win_rate_pct": {
"type": "number",
"minimum": 1,
"maximum": 99,
"default": 55,
"description": "Estimated win probability % (use get_signal_performance or get_signal_backtest to ground this)"
},
"payoff_ratio": {
"type": "number",
"minimum": 0.1,
"maximum": 20,
"default": 1.5,
"description": "Avg win / avg loss ratio (default 1.5)"
},
"kelly_fraction": {
"type": "number",
"minimum": 0.05,
"maximum": 1,
"default": 0.25,
"description": "Fraction of full Kelly to use (default 0.25 — quarter Kelly)"
},
"max_slippage_pct": {
"type": "number",
"minimum": 0.01,
"maximum": 5,
"default": 0.3,
"description": "Max acceptable slippage % — caps size by orderbook depth"
},
"leverage": {
"type": "number",
"minimum": 1,
"maximum": 50,
"default": 3,
"description": "Intended leverage (default 3x)"
}
},
"required": [
"asset",
"direction",
"bankroll_usdc"
],
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_carry_scanner(size_usdc, top_n)
Funding carry NET of costs: annualized funding minus (spread + 2x slippage at your size), with break-even holding period and a 7d funding-stability score from our snapshots. get_top_funding_rates shows gross — nobody trades gross.
Eingabe-Schema
{
"type": "object",
"properties": {
"size_usdc": {
"type": "number",
"minimum": 100,
"default": 10000,
"description": "Intended position size in USDC — costs are computed at this size"
},
"top_n": {
"type": "integer",
"minimum": 1,
"maximum": 15,
"default": 8,
"description": "How many candidates to fully cost out (default 8 — each costs an orderbook call)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}🟢get_cross_venue_funding(min_spread_annual_pct, limit)
Predicted funding spreads between Hyperliquid, Binance, and Bybit per asset (from HL's predictedFundings feed). Surfaces delta-neutral carry: long the venue with lowest funding, short the highest, collect the spread. Sorted by annualized spread.
Eingabe-Schema
{
"type": "object",
"properties": {
"min_spread_annual_pct": {
"type": "number",
"minimum": 0,
"default": 5,
"description": "Minimum annualized funding spread between venues to report (default 5%)"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 15,
"description": "Max rows (default 15)"
}
},
"additionalProperties": false,
"$schema": "http://json-schema.org/draft-07/schema#"
}Community
Nachweis