PredMCP

Polymarket + Hyperliquid + macro for AI agents. 38 tools, signal backtest, SSE streaming. Free tier.

사용해야 할까요

품질 및 안전성

B
설명 품질
93%
스키마 완전성
89%
이름 품질
100%
오염 위험
40%
권한 일치
100%
프로토콜 준수
100%

발견 사항 (10)

  • HIGHTool poisoning patterns detected
  • MEDIUMTool 'get_outcome_edges' description contains placeholder textget_outcome_edges에서
  • MEDIUMTool description contains suspicious base64-like encoded stringget_news_signals에서
  • LOWTool 'get_odds' description lacks action verbget_odds에서
  • LOWTool 'get_funding_rates' description lacks action verbget_funding_rates에서
  • LOWTool 'get_whale_trades' description lacks action verbget_whale_trades에서
  • LOWTool 'get_market_edge' description lacks action verbget_market_edge에서
  • LOWTool 'get_cex_outflows' description lacks action verbget_cex_outflows에서
  • INFOTool description contains placeholder or incomplete textget_outcome_edges에서
  • INFOTool description contains placeholder or incomplete textget_news_signals에서

도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.

컨텍스트 비용

~10,037토큰 (도구 정의)
~1.3 KB일반적인 응답 크기
상당한 주의 영향 (128k 컨텍스트의 7.84%)

이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.

설치

원클릭 설치

`claude_desktop_config.json` 파일에 다음을 추가하세요:

{
  "mcpServers": {
    "predmcp": {
      "url": "https://predmcp.com/mcp"
    }
  }
}

원격 엔드포인트

https://predmcp.com/mcpstreamable-http

할 수 있는 일

도구 목록

도구 (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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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).

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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).

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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).

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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.

입력 스키마

{
  "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#"
}

커뮤니티

이 서버 평가하기

증거

최근 관측

검증됨버전이 기록되지 않음도구 52개
검증됨버전이 기록되지 않음도구 52개
검증됨버전이 기록되지 않음도구 52개