Skip to main content

MCP server exposing Polymarket + Kalshi + Manifold to Claude/LLMs, with 3-venue arb discovery.

Project description

prediction-market-mcp

Give Claude (or any MCP-compatible LLM) a live view into Polymarket + Kalshi + Manifold, plus a single tool that hunts for 3-venue arb.

Just want to look at Polymarket data without installing an MCP server? Try the live dashboard: https://creampig666.github.io/prediction-markets-live/

An MCP server in ~400 lines of Python. No keys, no auth, no signup. Stdio transport, Claude Desktop ready.

You:  "Find me anything interesting on bitcoin right now."
Claude (calls find_arb_opportunities("bitcoin")):
  "Polymarket has 'BTC > $150k by Jun 30' at 12%. Kalshi's matched
   contract is at 19%. Manifold's 'Bitcoin to $150k in 2026?' is at 22%.
   12 percentage points between Polymarket and Manifold — worth a
   look at whether they're really the same underlying..."

What it exposes

11 tools across 3 venues:

Tool What it does
polymarket_top_markets(limit) Top Polymarket markets by 24h volume
polymarket_get_market(slug) Single market detail by slug
polymarket_search(query, limit) Keyword search across active markets
kalshi_top_events(limit) Active Kalshi events
kalshi_get_market(ticker) Single Kalshi market by ticker
kalshi_markets_for_event(event_ticker) All sub-markets under a Kalshi event
kalshi_search_events(query) Keyword search across open Kalshi events
manifold_top_markets(limit) Recent BINARY Manifold markets
manifold_get_market(slug) Single Manifold market by slug
manifold_search(query, limit) Keyword search across Manifold
find_arb_opportunities(query, min_divergence_pp) 3-venue search + cross-pair divergence report. Returns matched pairs (any 2 of 3 venues) ranked by abs implied-prob gap.

All tools return structured JSON ready for the LLM to summarize.

Install

pip install git+https://github.com/creampig666/prediction-market-mcp.git

Or local dev:

git clone https://github.com/creampig666/prediction-market-mcp.git
cd prediction-market-mcp && pip install -e .

Hook it up to Claude Desktop

Edit your Claude Desktop config (on Windows: %APPDATA%\Claude\claude_desktop_config.json, on Mac: ~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "prediction-market": {
      "command": "prediction-market-mcp"
    }
  }
}

Restart Claude Desktop. The 8 tools above will appear in the tool list and you can ask things like:

  • "What are the biggest Polymarket markets right now?"
  • "Find Kalshi markets about the next Pope."
  • "Run find_arb_opportunities on 'iran' and tell me which one has the biggest gap."

Hook it up to other MCP clients

Anything that speaks MCP stdio works. The server has no state and no config — just run prediction-market-mcp and pipe JSON-RPC over stdin/stdout.

How find_arb_opportunities works

  1. Search all three venues (Polymarket / Kalshi / Manifold) for the keyword.
  2. For Kalshi, drill from matched events into their sub-markets.
  3. Build a flat candidate list of {venue, label, yes_price, url} per matched market.
  4. Enumerate all cross-venue pairs (poly×kalshi, poly×manifold, kalshi×manifold).
  5. Compute divergence in percentage points, filter by min_divergence_pp (default 3), sort desc, return top 30.

Caveats the LLM should know:

  • It's a keyword match, not a semantic match. "BTC 150k" on one venue might be matched to "Bitcoin 150,000" on the other. Edge cases will produce false pairs.
  • The matched markets may not be exactly the same underlying (timeframe, strike, resolution criteria can differ).
  • Polymarket prices in this API are mid; Kalshi prices are last-trade. They're not directly tradeable.
  • All of which is why the LLM should treat results as leads to investigate, not signals to act on.

Family

Tip jar

Free and stays free. If it surfaced an arb for you, tips welcome:

0x17Fb06dE9D5945eaFf6FBBf4c264E505D38182A4   # EVM (ETH / USDC / any EVM L2)

License

MIT. See LICENSE.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

prediction_market_mcp-0.2.0.tar.gz (12.2 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

prediction_market_mcp-0.2.0-py3-none-any.whl (12.4 kB view details)

Uploaded Python 3

File details

Details for the file prediction_market_mcp-0.2.0.tar.gz.

File metadata

  • Download URL: prediction_market_mcp-0.2.0.tar.gz
  • Upload date:
  • Size: 12.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for prediction_market_mcp-0.2.0.tar.gz
Algorithm Hash digest
SHA256 6369dc3c11b9bcb1b11e2ef6b92b58f6f94c91ebf98575ba49eadfeedb4283e4
MD5 51a9c7a05d8b617ebc3166d693d92d50
BLAKE2b-256 7e77f0af49bf5f4c7f8565c5c4bec03b6a612765dd908c7cd78a573a4746c8af

See more details on using hashes here.

File details

Details for the file prediction_market_mcp-0.2.0-py3-none-any.whl.

File metadata

File hashes

Hashes for prediction_market_mcp-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 598f2cb191ca2e14989d4ce1ccc9bde3786b3713a659395d55ab25cc5c3316e4
MD5 5182a1ca326467b10bc51db8228269d5
BLAKE2b-256 c7e84082bce8b90a7e1674cc420e2ba72eba33402613528360a7bd3ae3a5f5fe

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page