Polyrank

io.github.polyrank/polyrank-mcp · v0.5.0 · crypto-web3

Polyrank is healthy: it completed an MCP handshake in 1355 ms and exposes 36 tools.

Polymarket trader analytics for AI agents: rank wallets, read trader metrics, backtest strategies.

Endpoint: https://mcp.polyrank.app/mcp (streamable-http)

Repository · Website · JSON · Add to my inventory

Facts

Users (last 30 days)0
HandshakeHealthy
Auth neededNone
Tool count36
Latency1355 ms
Last checked (UTC)2026-11-07T15:40:26.098Z

Health history

Checked (UTC)StatusLatencyError
2026-11-07T15:40:26.098ZHealthy1355

Tools (36)

polyrank_get_leaderboardTop Polymarket traders ranked by genuine SKILL (calibration/Brier, alpha-vs-mid, risk-adjusted return) — not vanity P&L or win rate. Returns rank, composite score, identity, P&L, win-rate, volume. Use it to find traders to study.
polyrank_get_trader_skillA single Polymarket wallet’s skill profile: composite rank, P&L, win-rate, volume, trades/markets, and commodity percentiles. The deep skill grid — full Brier decomposition, alpha-vs-mid, information coefficient, Sharpe, copyability & max copyable clip, true slippage, realized volatility, the hold-t
polyrank_get_trader_calibrationA wallet’s 10-bin reliability diagram (predicted probability vs observed outcome rate). Calibration is the core skill signal — whether the trader’s probabilities match reality. Returns bins + total resolved count.
polyrank_get_market_consensusSkill-weighted holder consensus on a Polymarket market vs the market mid (the Polyrank-vs-mid delta), plus 24h volume/fills, positioner counts, and top holders. Accepts a conditionId (0x + 64 hex) or a market slug.
polyrank_get_pulseLive Polymarket activity: big wins just banked (realized profit), sharp-money moves, the biggest recent trades, trending markets by volume, and markets where Polyrank consensus diverges most from the market mid. Good for "what is smart money doing right now".
polyrank_get_platform_statsLive Polyrank coverage and the canonical skill-metric count: wallets scored (`wallets`), raw fill events indexed (`trades`), markets covered, the number of skill metrics in the catalog, and the earliest market year in the data (`since_year`; on-chain order-book fills start 2022-11-21): the live sour
polyrank_get_top_roi_tradesThe biggest return-on-cost RESOLVED Polymarket bets (won positions with a real cost floor) — a hall-of-fame of single trades by ROI multiple. Optionally filter by market category (e.g. "Sports", "Politics", "Crypto"). Identities are masked (pseudonym only).
polyrank_get_moversTraders whose skill rank climbed or fell the most recently (leaderboard momentum). Returns top climbers and fallers for a ranking preset over a lookback window.
polyrank_get_smart_money_reportsThe archive of Polyrank weekly Skill Reports (published each week): a list of report ids/weeks with summaries. Fetch one in full with polyrank_get_smart_money_report.
polyrank_get_smart_money_reportOne Polyrank weekly Skill Report in full: big wins, skill-rank movers, new entrants, the calibration leader, consensus divergence, and the editorial intro. Pass the week/report id from polyrank_get_smart_money_reports.
polyrank_get_trader_by_tidLook up a trader by the opaque masked id (tid) returned in leaderboard / pulse / movers / top-ROI rows — those masked surfaces omit the raw wallet, so use the tid to follow a trader. Returns the same masked skill teaser as the wallet lookup. Full wallet/identity resolution requires signing in on pol
polyrank_get_trader_calibration_by_tidA trader’s 10-bin reliability diagram (predicted probability vs observed outcome rate) keyed by the opaque masked id (tid) from a leaderboard / pulse / movers / top-ROI row. Calibration is the core skill signal — whether the trader’s probabilities match reality. Completes the discovery → tid → calib
polyrank_get_custom_rankingA published Polyrank Builder ranking: masked top-25 + the weight/filter definition. Builder rankings are custom skill leaderboards (a weighting over the metric catalog plus filters) that users publish and share by slug. Returns the masked top-25 rows and the ranking’s weight/filter definition. Pass
polyrank_get_traders_batchFetch the free masked skill teaser for several traders at once by their opaque masked ids (tids). Same per-trader payload as polyrank_get_trader_by_tid, capped at 10 tids per call. No API key needed. Each result is tagged with its tid, and per-tid failures are returned inline (as an error field) rat
polyrank_get_metrics_catalogThe full catalog of displayable Polyrank metrics (84): id, name, description, category, direction (higher/lower is better), the windows each is available at, and whether it is advanced. This is the vocabulary for polyrank_rank_wallets weights, skill_gates and metric_filters. Free, no key.
polyrank_get_metric_windowsWhich metric exists at which window (lifetime / 90d / 30d / 7d / 24h), whether it can be weighted, gated or filtered, the copy-engine and entry-timing ids (lifetime-pinned), and what a back-dated board (as_of) can answer: its metrics, the filters it honours and the reason for each it refuses. The re
polyrank_list_ranking_templatesThe Ranking Builder's goals (e.g. "Copy entries", "Copy engine") as the exact request the Builder runs for each, and the site's preset boards with their configs. Pass a goal's `request` (or a preset's config) to polyrank_rank_wallets to reproduce that board, or edit it. A goal `banner` is a measured
polyrank_resolve_tidResolve an opaque masked id (tid) to the underlying proxy wallet address. Requires a Polyrank API key (pk_live_… / pk_test_…): set POLYRANK_API_KEY. The MCP sends it as a Bearer token and the API key-auth accepts it — no browser session needed. Then use the resolved wallet with polyrank_get_trader_s
polyrank_rank_walletsRank every Polymarket wallet with your own composite — exactly what the Ranking Builder runs (POST /v1/rankings/custom). weights: metric id → weight (or {weight, window}); any of the 84 catalog metrics at any window it exists at (polyrank_get_metric_windows), plus copy-engine (sk_score_14d) and entr
polyrank_get_trader_metricsOne trader's every metric displayable at a window (lifetime / 90d / 30d / 7d / 24h): the raw value and its percentile in that window's cohort — the cells a board ranked at that window scores. Give a wallet address or a masked tid. scope=combined (default) reads the multi-wallet user row as boards do
polyrank_list_lab_templatesThe Strategy Lab's templates: research strategy families as editable strategy specs, each with its as-of evidence (SIMULATED, per $10 copied) and caveats. Copy one's `spec` (or its id) into polyrank_create_strategy / polyrank_run_backtest. Needs POLYRANK_API_KEY.
polyrank_get_backtestA backtest by id: its status (queued / running / done / failed) and, when done, the full SIMULATED report (per-$10 P&L, copies, the no-selection control, without-best-wallet, capacity, funnel, per wallet, daily). Needs POLYRANK_API_KEY.
polyrank_get_paper_runA paper run by id with the grader's stats (copies, resolved, P&L per $10, entry vs the leader, the paper gate) and its copies, each with its fate (copied / no_fill / leader_sold / capped / skipped + reason). Needs POLYRANK_API_KEY.
polyrank_list_strategiesYour saved strategies, newest first, each with its state and its latest backtest's headline (per $10 copied, copies; SIMULATED). `status` lists only one state: draft, backtested (tested), paper (paper trading), promotable (passed the paper gate), live, archived. Needs POLYRANK_API_KEY.
polyrank_get_strategyOne of your strategies by id: its name, state and full strategy spec (wallet source, market, entry, sizing, exit). Edit it with polyrank_update_strategy. Needs POLYRANK_API_KEY.
polyrank_list_backtestsYour recent backtests (all, or one strategy's), newest first, with status and headline (SIMULATED). Read one in full with polyrank_get_backtest. Needs POLYRANK_API_KEY.
polyrank_get_lab_limitsYour plan's Strategy Lab limits and what is used now: backtests a day and today's, backtests waiting, paper runs at once, saved strategies, and the assistant chats answering at once (lab_agent_concurrent) against those answering now. Needs POLYRANK_API_KEY.
polyrank_lab_list_chatsYour Lab assistant chats, most recent first (at most 100): id, title, status (idle / queued / working / failed). Read one with polyrank_lab_get_chat. Needs POLYRANK_API_KEY (a paid plan; the assistant is part of every paid plan).
polyrank_lab_get_chatOne of your Lab assistant chats: its status, the questions and the assistant's answers with their notices and result cards (backtests, shortlists, strategies, tables). While a question waits, `queue_position` says how many are ahead; `awaiting_backtests` counts backtests the assistant started whose
polyrank_create_strategySave a strategy to your Lab: a name plus a strategy spec (wallet source — any Builder ranking, a history ranking, a static wallet list or a copy-engine sleeve — and market, entry, sizing and exit rules), or a template_id to copy a template. The server validates the spec and answers with the reason w
polyrank_run_backtestQueue a backtest of a saved strategy (strategy_id) or an unsaved spec over [from, to) (ISO dates, at most 366 days), optionally with explicit re-rank cuts. Answers with the queued run; poll polyrank_get_backtest. Results are SIMULATED (each report names its fill model and measured optimism). Counts
polyrank_start_paperStart paper trading a saved strategy: from now on every signal of its wallets is scored against the real order book (no orders, no keys, no money). One active run per strategy. Needs POLYRANK_API_KEY (plan feature paper_trading).
polyrank_update_strategyRename a saved strategy and/or replace its strategy spec (a changed spec makes it a draft again: its earlier backtests stay, tested on the old rules). The server validates the spec and answers with the reason when it refuses. Needs POLYRANK_API_KEY.
polyrank_lab_askStart a Lab assistant chat with a question (research only: it finds traders, saves, backtests and paper-trades strategies in YOUR account, never places orders). Spends your plan's AI credits (a question needs 25 to start; a typical one costs about 13; `deep: true` runs the slower, more thorough mode
polyrank_lab_replySend the next message in one of your Lab assistant chats (409 while it is still answering). Spends AI credits like polyrank_lab_ask and waits the same way for the answer. Needs POLYRANK_API_KEY.
polyrank_lab_stopStop the Lab assistant answering in one of your chats: a question still queued is withdrawn; a running answer stops within about a second and keeps what it finished. A backtest it started keeps running. Needs POLYRANK_API_KEY.