Polymarket's public API is great. Wiring it up isn't.
Polymarket exposes a rich public API across two surfaces — Gamma for market discovery, CLOB for order books and price history. The endpoints are clean. The only thing standing between you and "ask Claude about this market" is a few hundred lines of glue.
This package is the glue. Seven read-only tools wrapped around the most useful endpoints, with stable client-side filtering for the bits Gamma doesn't surface natively. Drop into any MCP-aware client and ask in English.
The seven tools
-
polymarket_search_markets— substring match across question, slug, description -
polymarket_get_market— by numeric ID or slug -
polymarket_get_orderbook— live order book for any CTF outcome token -
polymarket_get_price_history— 1m / 5m / 15m / 1h / 6h / 1d intervals -
polymarket_list_categories— full tag list -
polymarket_get_volume_leaders— top markets by 24-hour volume, optionally scoped by category -
polymarket_get_market_resolutions— closed markets, client-side filtered by date window
All seven tools registered, all returning the standard JSON envelope.
Runtime deps are mcp + requests only — py-clob-client is wired
under an optional [trading] extra for teams that want to
build a wallet-authenticated trading layer on top.
Who this is for
This MCP server is for you if:
- You're researching prediction markets and want Claude to be able to pull live data instead of guessing from training-data snapshots.
- You're building automation around Polymarket and want a clean starting point for the read layer.
- You'd rather use a tested wrapper than re-derive the search + resolution-filter logic from scratch.
It's not for you if:
- You need live trading. That requires wallet auth and is intentionally out of scope.
- You want WebSocket streaming. Request-response only at v0.1.