Polymarket research for Claude
Live prices, resolution rules and status, order-book depth with real fill costs, who is trading, biggest moves and any public wallet. Read-only, free, no account or keys.
Server URL:
https://mcp.lacuna.markets/mcpIn claude.ai: Settings → Connectors → Add custom connector → paste the URL. No sign-in is needed.
In Claude Code:
claude mcp add --transport http pmi https://mcp.lacuna.markets/mcpWhat it does
- Understand a market before you trade it. The rules verbatim with their named source, the end date, fees, and where resolution stands: not proposed yet, proposed and in its challenge window, disputed, or resolved.
- Know the real price of an order. Walks the live order book for any dollar amount and returns average and worst price, slippage and Polymarket's taker fee.
- See who is moving a market. Net money per outcome, the largest trades, the wallets accumulating and the biggest holders, or the largest trades across all of Polymarket.
- Find what moved. The largest price changes over an hour, a day, a week or a month, without markets that are merely settling and without live games.
- Size up any trader. Polymarket's leaderboard by profit or volume, and for any wallet or username its track record, open positions, profit and loss and exposure by event.
Every tool accepts a polymarket.com link, so you can paste the page you are looking at. In claude.ai and Claude Desktop, market, order book, trading and wallet answers also render as interactive cards.
Tools
All 7 tools are read-only (readOnlyHint: true) and only read public data.
pm_search · Search markets
Use this first when the user asks what Polymarket thinks about a topic, how likely something is, or names a market without a link. Searches every Polymarket market by keyword (Polymarket's own full-text search) or by a polymarket.com link and returns events with all their outcomes, current prices, 24h volume and end dates, plus the slug to pass to the other tools. Use status='resolved' for past markets and how they settled.
| Parameter | Type | Meaning | |
|---|---|---|---|
query | string | required | Keywords ("fed october", "bitcoin 150k", "house 2026") or a polymarket.com link. |
status | open | resolved | all | default "open" | open (default), resolved, or all. |
limit | number | default 5 | Number of events to return (1–10, default 5). |
Try asking
- “What is Polymarket pricing for the Fed's October decision?”
- “Find resolved markets about the 2024 election.”
pm_market · Market brief
Use this when the user asks about one Polymarket market or event: its price, what exactly decides how it resolves, whether an outcome has been proposed or disputed, when it ends, its fees, or how it has moved. Returns prices, bid/ask and spread, change over 1h/24h/7d/30d with a 30-day range, volume and liquidity, taker fees, the resolution rules verbatim with their named source, and the live resolution status (not proposed / proposed and in its challenge window / disputed / resolved). For a multi-outcome event it lists every outcome and whether the prices add up to 100¢; add outcome to drill into one. Accepts a polymarket.com link or a slug from pm_search.
| Parameter | Type | Meaning | |
|---|---|---|---|
market | string | required | A polymarket.com link, or a market or event slug from pm_search. |
outcome | string | optional | For a multi-outcome event: the outcome label to show in detail ("25 bps decrease"). |
Try asking
- “Read me the exact resolution rules for this market and flag anything that could surprise a Yes holder: <polymarket.com link>”
- “Has an outcome been proposed for this market yet?”
pm_book · Order book and fill cost
Use this when the user asks how liquid a Polymarket market is, how much a trade of a given size would really cost, how far it would move the price, or what the order book looks like. Returns the live book for one outcome: best levels, spread, dollar depth near the mid and which side is heavier. With amount it walks the book level by level for a market order (dollars to spend when buying, shares when selling) and returns shares filled, average and worst price, slippage against the mid, Polymarket's taker fee and the breakeven probability.
| Parameter | Type | Meaning | |
|---|---|---|---|
market | string | required | A polymarket.com link, or a market or event slug from pm_search. |
outcome | string | optional | Which outcome: "Yes"/"No", a team name, or for a multi-outcome event the outcome label ("25 bps decrease"). Default: the first outcome (usually Yes). |
side | buy | sell | default "buy" | buy (default) or sell. |
amount | number | optional | For buy: dollars to spend. For sell: number of shares to sell. Omit to see the book only. |
Try asking
- “If I buy $5,000 of Yes here, what average price do I get after fees?”
- “How deep is the book within 2¢ of the mid?”
pm_flow · Who is trading
Use this when the user asks who is buying or selling a Polymarket market, why its price moved, where the money is going, who the biggest holders are, or (with no market) what the whales are doing across Polymarket. For a market or event: dollars traded and net direction per outcome, distinct wallets, the largest trades, the wallets that moved the most money, and for a single market the biggest current holders. With no market: the largest trades across all of Polymarket and the markets drawing that money. Traders appear by public username when they set one; pass a wallet to pm_portfolio for its full track record.
| Parameter | Type | Meaning | |
|---|---|---|---|
market | string | optional | A polymarket.com link, or a market or event slug from pm_search. Omit to see the largest trades across all of Polymarket. |
hours | number | default 24 | Look-back window in hours (1–168, default 24). |
outcome | string | optional | For a multi-outcome event: limit to one outcome by its label. |
min_usd | number | default 10000 | Without a market: only trades of at least this many dollars (default $10,000). |
Try asking
- “Who has been buying this market in the last 6 hours, and who are the biggest holders?”
- “What are the whales trading on Polymarket today?”
pm_moves · Biggest price moves
Use this when the user asks what is moving, trending or changing on Polymarket, what moved overnight or this week, or for the biggest gainers and losers. Ranks the 300 most-traded open markets by price change over the last hour, day, week or month, with old and current price, the move in percentage points, 24h volume and the slug for follow-ups (pm_flow shows who moved it). Markets that are merely settling and live sports games are left out unless include_games is true.
| Parameter | Type | Meaning | |
|---|---|---|---|
window | 1h | 24h | 7d | 30d | default "24h" | Look-back window: 1h, 24h (default), 7d or 30d. |
direction | both | up | down | default "both" | both (default), up only, or down only. |
min_volume_24h_usd | number | default 10000 | Skip markets that traded less than this in the last 24h (default $10,000). |
include_games | boolean | default false | Include individual sports games, whose prices move with the score (default false). |
limit | number | default 10 | Rows to return (1–20, default 10). |
Try asking
- “What moved the most on Polymarket in the last 24 hours, excluding sports games?”
pm_leaderboard · Top traders
Use this when the user asks who the best or biggest Polymarket traders are, who made the most money today, this week, this month or all time, or who leads in a category (politics, sports, crypto, economics, finance, culture, tech, weather, mentions). Returns Polymarket's own leaderboard ranked by profit or by volume, with usernames and wallet addresses to pass to pm_portfolio.
| Parameter | Type | Meaning | |
|---|---|---|---|
period | day | week | month | all | default "week" | day, week (default), month or all. |
by | pnl | volume | default "pnl" | Rank by profit and loss (pnl, default) or by dollar volume. |
category | overall | politics | sports | crypto | economics | finance | culture | tech | weather | mentions | default "overall" | overall (default) or one category. |
limit | number | default 10 | Rows to return (1–25, default 10). |
Try asking
- “Who made the most money on Polymarket politics markets this month?”
pm_portfolio · Wallet positions
Use this when the user asks what a Polymarket trader or wallet holds, how good a trader is, or wants to size up a wallet seen in pm_flow. Returns the track record (all-time and 30-day profit and loss, volume, leaderboard rank, markets traded), open positions with entry and current price, unrealized P&L, exposure grouped by event, settled winnings not yet redeemed, and recent trades. Accepts a 0x wallet address, a polymarket.com profile link or a Polymarket username. Public on-chain data only.
| Parameter | Type | Meaning | |
|---|---|---|---|
wallet | string | required | 0x wallet address, polymarket.com profile link (…/@name or …/profile/0x…), or Polymarket username. |
Try asking
- “Is Polymarket user cosmicxbt actually a good trader? What do they hold right now?”
Data and limits
- Source: Polymarket's public Gamma, CLOB and Data APIs. Responses are cached for 10 seconds to 5 minutes, so figures can lag the live site by that much.
- Recent trades come from the latest 1,000 trades of a market; for very busy markets that can cover less than the requested window, and the answer says so.
- Biggest moves scan the 300 most-traded open markets.
- Nothing here is investment advice. The server cannot place orders or move funds.
Support
Questions or problems: support@lacuna.markets. Privacy: privacy policy.