Skip to content

PredMCP

by RavioleLabs · remote · no sign-in to list tools · v0.5.0 · published by GitHub user RavioleLabs

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

Changes · 2

52 tools: 2 change things and 50 only read.

Scanned Oct 21, 2026

1 check matched something in the tool definitions. No finding is not a safety guarantee. How the checks work.

claude mcp add --transport http predmcp https://predmcp.com/mcp --header 'x-api-key: <your-x-api-key>'

Findings

Matches of fixed checks, with the text they matched.

1 warn
  • The server marks "get_oi_history" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

    Matched text

    annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "get_oi_history" says "get": a word for reading.

    What this check looks for

Tools

Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.

52 tools

Changes things 2Claude Code: ask
  • create_api_keyGenerate a free PredMCP API key.No findings

    Why it is in this group

    • The name "create_api_key" says "create": a word for a change.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: false
    • openWorldHint: false
  • get_oi_historyOpen-interest time series for a coin over the last 24h, from our continuous 5-min collector.1 finding

    Why it is in this group

    • The name "get_oi_history" says "get": a word for reading.
    • The description's first verb is "open": a word for a change.
    • The server marks it read-only (readOnlyHint: true), but an annotation never lowers a class.

    Findings

    • Warn

      The server marks "get_oi_history" read-only (readOnlyHint: true), and its own name, description or input give the class "write".

      Matched text

      annotations: {"readOnlyHint":true,"openWorldHint":true}; The name "get_oi_history" says "get": a word for reading.

      What this check looks for
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
Only reads 50Claude Code: allow
  • get_basic_macroDXY, US10Y yield, S&P 500, gold, VIX — direct from free Yahoo Finance.No findings

    Why it is in this group

    • The name "get_basic_macro" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_carry_scannerFunding 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.No findings

    Why it is in this group

    • The name "get_carry_scanner" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_cex_outflowsNet ETH outflows across known CEX hot wallets (Binance, Coinbase, OKX, Kraken, Bitfinex) over a window.No findings

    Why it is in this group

    • The name "get_cex_outflows" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_conviction_scoreAggregates funding outlier, whale imbalance, OI/volume ratio, and momentum into a single directional score (-100 short ↔ +100 long) plus a 0-100 strength score.No findings

    Why it is in this group

    • The name "get_conviction_score" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_cross_venue_fundingPredicted funding spreads between Hyperliquid, Binance, and Bybit per asset (from HL's predictedFundings feed).No findings

    Why it is in this group

    • The name "get_cross_venue_funding" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_funding_curve_anomalyTerm-structure analysis of Hyperliquid funding for an asset: current vs 8h avg vs 24h avg vs 7d baseline.No findings

    Why it is in this group

    • The name "get_funding_curve_anomaly" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_funding_outliersHyperliquid perps whose current funding rate deviates significantly from their 7-day average.No findings

    Why it is in this group

    • The name "get_funding_outliers" says "get": a word for reading.
    Description, as the server wrote it
    Hyperliquid perps whose current funding rate deviates significantly from their 7-day average. A spike vs baseline is a stronger signal than raw rate.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_funding_ratesCurrent funding rates for Hyperliquid perpetuals.No findings

    Why it is in this group

    • The name "get_funding_rates" says "get": a word for reading.
    Description, as the server wrote it
    Current funding rates for Hyperliquid perpetuals. Positive rate = longs pay shorts (bearish bias); negative = shorts pay longs (bullish bias).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_hip4_vs_pm_arbFinds the same underlying market priced on both HIP-4 (on-chain Hyperliquid) and Polymarket, flagging spreads above threshold.No findings

    Why it is in this group

    • The name "get_hip4_vs_pm_arb" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_late_game_sportsSports prediction markets on Polymarket closing within a few hours with a high-certainty leading outcome.No findings

    Why it is in this group

    • The name "get_late_game_sports" says "get": a word for reading.
    Description, as the server wrote it
    Sports prediction markets on Polymarket closing within a few hours with a high-certainty leading outcome. Targets near-certain resolution for late-game positioning.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_liquidation_clustersEstimated price levels where mass liquidations concentrate for a given Hyperliquid perp, computed from mark price and standard leverage multiples.No findings

    Why it is in this group

    • The name "get_liquidation_clusters" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_macro_contextLive macro snapshot: DXY, US10Y yield, S&P 500, gold, VIX (Yahoo Finance free) + BTC dominance, ETH/BTC, total crypto market cap (CoinGecko free).No findings

    Why it is in this group

    • The name "get_macro_context" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_macro_liquidityFiat-to-crypto liquidity gauge: BTC + ETH spot ETF flows (Farside) plus on-chain USDT + USDC mint/burn (Etherscan).No findings

    Why it is in this group

    • The name "get_macro_liquidity" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_market_contextUnified 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).No findings

    Why it is in this group

    • The name "get_market_context" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_market_edgeUniversal fair-value anchor for ONE market of ANY category.No findings

    Why it is in this group

    • The name "get_market_edge" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_market_edgesOne-call universal mispricing scanner across ALL HIP-4 market types (crypto price, sports, politics, macro, events).No findings

    Why it is in this group

    • The name "get_market_edges" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_market_regimeOne-call market regime classifier: RISK_ON_TRENDING / RISK_OFF / SQUEEZE_RISK / CHOP_LOW_VOL / MIXED.No findings

    Why it is in this group

    • The name "get_market_regime" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_marketsLive prediction markets from Polymarket and/or HIP-4, sorted by volume.No findings

    Why it is in this group

    • The name "get_markets" says "get": a word for reading.
    Description, as the server wrote it
    Live prediction markets from Polymarket and/or HIP-4, sorted by volume. Returns title, YES/NO prices, 24h volume, and expiry.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_markets_near_resolutionPolymarket markets resolving within the next N hours with a leading probability above threshold.No findings

    Why it is in this group

    • The name "get_markets_near_resolution" says "get": a word for reading.
    Description, as the server wrote it
    Polymarket markets resolving within the next N hours with a leading probability above threshold. Useful for resolution arbitrage and last-minute positioning.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_moversTop prediction markets ranked by 24h volume spike or biggest YES/NO price swing.No findings

    Why it is in this group

    • The name "get_movers" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_news_correlationRecent crypto news headlines mentioning an asset (CoinDesk, The Block, Decrypt, Cointelegraph) paired with the 1h price move that followed each.No findings

    Why it is in this group

    • The name "get_news_correlation" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_news_feedRecent headlines across crypto, finance and sports RSS feeds, unfiltered and unclassified.No findings

    Why it is in this group

    • The name "get_news_feed" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_news_signalsNews → markets recommender: pulls recent crypto headlines, classifies each event type (depeg/hack_exploit/listing/delisting/unlock/regulatory/partnership/outage/hype/fud/macro), ex…No findings

    Why it is in this group

    • The name "get_news_signals" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_oddsCurrent YES/NO prices and implied probability for any Polymarket or HIP-4 market token.No findings

    Why it is in this group

    • The name "get_odds" says "get": a word for reading.
    Description, as the server wrote it
    Current YES/NO prices and implied probability for any Polymarket or HIP-4 market token.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_oi_divergencePrice-vs-OI regime per coin from our continuous snapshots: NEW_LONGS / SHORT_SQUEEZE / NEW_SHORTS / LONG_LIQUIDATION.No findings

    Why it is in this group

    • The name "get_oi_divergence" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_oi_near_capLists Hyperliquid perps that are currently at the open interest cap — new long positions cannot be opened.No findings

    Why it is in this group

    • The name "get_oi_near_cap" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_options_ivBTC or ETH options snapshot via free Deribit feed: ATM implied volatility, put-call skew, term structure, total OI and 24h volume.No findings

    Why it is in this group

    • The name "get_options_iv" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_orderbookFull orderbook depth (bids + asks) for any Polymarket market token.No findings

    Why it is in this group

    • The name "get_orderbook" says "get": a word for reading.
    Description, as the server wrote it
    Full orderbook depth (bids + asks) for any Polymarket market token. Shows liquidity at each price level.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_orderbook_depthFull orderbook depth + slippage estimate for any Hyperliquid perp or HIP-4 market.No findings

    Why it is in this group

    • The name "get_orderbook_depth" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_outcome_edgesOne-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|.No findings

    Why it is in this group

    • The name "get_outcome_edges" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_outcome_fair_valueOptions/vol-implied fair value for a HIP-4 binary/range/touch PRICE market ("<asset> above $X at time T?").No findings

    Why it is in this group

    • The name "get_outcome_fair_value" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_pm_hl_divergencesMarkets where Polymarket implied probability diverges from Hyperliquid perpetual funding direction — e.g.No findings

    Why it is in this group

    • The name "get_pm_hl_divergences" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_portfolio_riskRisk 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 V…No findings

    Why it is in this group

    • The name "get_portfolio_risk" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • get_position_sizeTurn 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, an…No findings

    Why it is in this group

    • The name "get_position_size" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_price_summaryOne-call snapshot for an asset: mark price, 24h and 7d returns, 30d high/low, drawdown from high, rally from low, annualized realised volatility.No findings

    Why it is in this group

    • The name "get_price_summary" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_recent_newsRecent crypto news headlines matching an asset ticker, from CoinDesk + The Block + Decrypt + Cointelegraph RSS feeds.No findings

    Why it is in this group

    • The name "get_recent_news" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_recent_signalsServer-detected events from the last hour: funding outliers (≥3x 7d baseline), whale trades (≥$100k), OI caps reached.No findings

    Why it is in this group

    • The name "get_recent_signals" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_setup_qualityExecution-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/resista…No findings

    Why it is in this group

    • The name "get_setup_quality" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_signal_backtestFind 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.No findings

    Why it is in this group

    • The name "get_signal_backtest" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_signal_historyServer-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.No findings

    Why it is in this group

    • The name "get_signal_history" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_signal_performanceHit rates and average forward returns per signal type, measured on OUR actually-emitted production signals (not a backtest reconstruction).No findings

    Why it is in this group

    • The name "get_signal_performance" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_simple_ivBTC or ETH options snapshot via free Deribit public feed: ATM implied volatility, total OI, 24h volume.No findings

    Why it is in this group

    • The name "get_simple_iv" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_top_funding_ratesTop Hyperliquid perps ranked by absolute funding rate, with OI and annualized yield.No findings

    Why it is in this group

    • The name "get_top_funding_rates" says "get": a word for reading.
    Description, as the server wrote it
    Top Hyperliquid perps ranked by absolute funding rate, with OI and annualized yield. Useful for finding the most overcrowded longs/shorts and carry opportunities.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_upcoming_catalystsLists upcoming market catalysts for an asset within a horizon: token unlocks, governance votes (Tally), ETF/SEC deadlines, FOMC dates.No findings

    Why it is in this group

    • The name "get_upcoming_catalysts" says "get": a word for reading.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_volume_spikesPolymarket markets with abnormal 24h volume vs their 7-day daily average.No findings

    Why it is in this group

    • The name "get_volume_spikes" says "get": a word for reading.
    Description, as the server wrote it
    Polymarket markets with abnormal 24h volume vs their 7-day daily average. Volume spikes typically precede news events or informed positioning.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_whale_flowCumulative whale buy/sell imbalance over hours-to-days from the durable trade tape (≥$25k trades persisted continuously, restart-proof).No findings

    Why it is in this group

    • The name "get_whale_flow" says "get": a word for reading.
    Description, as the server wrote it
    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).

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_whale_labelLook up an Ethereum address against our curated label DB (CEX hot wallets, known market makers, suspected funds).No findings

    Why it is in this group

    • The name "get_whale_label" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: false
  • get_whale_positionsPositions of a specific Polymarket wallet, optionally filtered to one market.No findings

    Why it is in this group

    • The name "get_whale_positions" says "get": a word for reading.
    Description, as the server wrote it
    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.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • get_whale_tradesRecent large trades on Hyperliquid perps above a notional threshold.No findings

    Why it is in this group

    • The name "get_whale_trades" says "get": a word for reading.
    Description, as the server wrote it
    Recent large trades on Hyperliquid perps above a notional threshold. Includes side (long/short), size, price, and timestamp.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true
  • search_marketsFull-text search across all Polymarket and HIP-4 prediction markets.No findings

    Why it is in this group

    • The name "search_markets" says "search": a word for reading.
    Description, as the server wrote it
    Full-text search across all Polymarket and HIP-4 prediction markets. Returns ranked results with current odds.

    Annotations the server declares

    • readOnlyHint: true
    • openWorldHint: true

This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.

Install

Pinned to version 0.5.0. Values in angle brackets are yours to fill in.

claude mcp add --transport http predmcp https://predmcp.com/mcp --header 'x-api-key: <your-x-api-key>'

Run in a terminal.

Claude Code permissions

Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.

.claude/settings.json
{
  "permissions": {
    "allow": [
      "mcp__predmcp__get_markets",
      "mcp__predmcp__get_odds",
      "mcp__predmcp__get_orderbook",
      "mcp__predmcp__search_markets",
      "mcp__predmcp__get_whale_positions",
      "mcp__predmcp__get_movers",
      "mcp__predmcp__get_markets_near_resolution",
      "mcp__predmcp__get_volume_spikes",
      "mcp__predmcp__get_late_game_sports",
      "mcp__predmcp__get_funding_rates",
      "mcp__predmcp__get_whale_trades",
      "mcp__predmcp__get_top_funding_rates",
      "mcp__predmcp__get_oi_near_cap",
      "mcp__predmcp__get_orderbook_depth",
      "mcp__predmcp__get_price_summary",
      "mcp__predmcp__get_basic_macro",
      "mcp__predmcp__get_recent_news",
      "mcp__predmcp__get_news_feed",
      "mcp__predmcp__get_simple_iv",
      "mcp__predmcp__get_outcome_fair_value",
      "mcp__predmcp__get_outcome_edges",
      "mcp__predmcp__get_market_edge",
      "mcp__predmcp__get_market_edges",
      "mcp__predmcp__get_news_signals",
      "mcp__predmcp__get_recent_signals",
      "mcp__predmcp__get_market_regime",
      "mcp__predmcp__get_market_context",
      "mcp__predmcp__get_pm_hl_divergences",
      "mcp__predmcp__get_hip4_vs_pm_arb",
      "mcp__predmcp__get_funding_outliers",
      "mcp__predmcp__get_liquidation_clusters",
      "mcp__predmcp__get_signal_backtest",
      "mcp__predmcp__get_conviction_score",
      "mcp__predmcp__get_funding_curve_anomaly",
      "mcp__predmcp__get_setup_quality",
      "mcp__predmcp__get_upcoming_catalysts",
      "mcp__predmcp__get_macro_context",
      "mcp__predmcp__get_macro_liquidity",
      "mcp__predmcp__get_cex_outflows",
      "mcp__predmcp__get_news_correlation",
      "mcp__predmcp__get_portfolio_risk",
      "mcp__predmcp__get_options_iv",
      "mcp__predmcp__get_whale_label",
      "mcp__predmcp__get_signal_history",
      "mcp__predmcp__get_signal_performance",
      "mcp__predmcp__get_oi_divergence",
      "mcp__predmcp__get_whale_flow",
      "mcp__predmcp__get_position_size",
      "mcp__predmcp__get_carry_scanner",
      "mcp__predmcp__get_cross_venue_funding"
    ],
    "ask": [
      "mcp__predmcp__create_api_key",
      "mcp__predmcp__get_oi_history"
    ],
    "deny": []
  }
}

Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as predmcp. Review it before you use it.