Skip to main content
Glama
MCP Predictive Market

MCP Predictive Market

by EricGrill

What is this?

An MCP (Model Context Protocol) server that aggregates prediction market data from 5 major platforms. Search markets, compare odds, detect arbitrage opportunities, and track predictions through natural language.

Works with Claude Desktop, Claude Code, Cursor, and any MCP-compatible client.

Part of the Claude Code Plugin Marketplace.


Related MCP server: SimpleFunctions

Quick Start

# Clone and install
git clone https://github.com/EricGrill/mcp-predictive-market.git
cd mcp-predictive-market
uv sync

# Run the server
uv run python -m mcp_predictive_market.server

Add to your Claude config and start querying markets:

"Find prediction markets about AI regulation"


Why Use This?

Feature

Description

Multi-Platform Search

Query 5 prediction markets simultaneously

Arbitrage Detection

Find price discrepancies across platforms

Market Tracking

Build watchlists and monitor odds changes

Platform Comparison

Side-by-side odds for similar questions

Unified Data Model

Consistent market schema across all platforms


Available Tools

Search & Discovery

Tool

Description

search_markets

Search markets across all platforms by keyword

list_categories

Get available market categories

browse_category

Browse markets in a specific category

Market Data

Tool

Description

get_market_odds

Get current odds for a specific market

compare_platforms

Side-by-side comparison of similar markets

Tracking

Tool

Description

track_market

Add a market to your watchlist

get_tracked_markets

View all tracked markets with current prices

Analysis

Tool

Description

find_arbitrage

Detect price discrepancies between platforms


Supported Platforms

Platform

URL

Specialization

Manifold Markets

manifold.markets

Play money, wide variety

Polymarket

polymarket.com

Crypto, high liquidity

Metaculus

metaculus.com

Science, long-term forecasts

PredictIt

predictit.org

US politics

Kalshi

kalshi.com

CFTC-regulated, real money


Configuration

Claude Desktop Setup

Add to your Claude Desktop config:

Platform

Config Path

macOS

~/Library/Application Support/Claude/claude_desktop_config.json

Windows

%APPDATA%\Claude\claude_desktop_config.json

Linux

~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "prediction-market": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-predictive-market", "python", "-m", "mcp_predictive_market.server"]
    }
  }
}

Claude Code Setup

Add to your project .mcp.json or ~/.config/claude-code/mcp.json:

{
  "mcpServers": {
    "prediction-market": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/mcp-predictive-market", "python", "-m", "mcp_predictive_market.server"]
    }
  }
}

Examples

"Find prediction markets about AI"
"What categories of markets are available?"
"Show me crypto markets on Polymarket"
"Browse politics markets"
"Get current odds for Manifold market abc123"
"Compare odds for 'Will Bitcoin hit $100k?' across all platforms"
"Show me the probability of a 2024 recession on different platforms"
"Find arbitrage opportunities with at least 10% spread"
"Are there any markets with significantly different odds across platforms?"
"Show me the biggest price discrepancies right now"
"Track the Polymarket election market"
"Show all my tracked markets"
"What are the current prices on my watchlist?"

Development

# Clone
git clone https://github.com/EricGrill/mcp-predictive-market.git
cd mcp-predictive-market

# Install with dev dependencies
uv sync --extra dev

# Run tests
uv run pytest -v

# Run specific test file
uv run pytest tests/test_integration.py -v

Project Structure

src/mcp_predictive_market/
├── server.py           # MCP server entry point
├── tools.py            # Tool handler implementations
├── schema.py           # Unified market data models
├── errors.py           # Custom exceptions
├── rate_limiter.py     # Per-platform rate limiting
├── adapters/           # Platform-specific adapters
│   ├── base.py         # Adapter protocol
│   ├── manifold.py
│   ├── polymarket.py
│   ├── metaculus.py
│   ├── predictit.py
│   └── kalshi.py
├── analysis/           # Market analysis modules
│   ├── matching.py     # Cross-platform market matching
│   └── arbitrage.py    # Arbitrage detection
└── state/              # State management
    └── memvid_client.py

Troubleshooting

  1. Platform API may be rate-limited - wait and retry

  2. Check platform is online: visit the website directly

  3. Some platforms filter certain market types

  1. Lower the min_spread parameter (default is 5%)

  2. Try broader search terms

  3. Fewer opportunities exist in efficient markets

  1. Verify the market ID format (varies by platform)

  2. Ensure the market hasn't been resolved/closed

  3. Check you're using the correct platform name



Contributing

Contributions welcome!

  1. Fork the repository

  2. Create feature branch: git checkout -b feature/my-feature

  3. Make changes and test: uv run pytest

  4. Commit: git commit -m 'Add my feature'

  5. Push: git push origin feature/my-feature

  6. Open a Pull Request


License

MIT

Available Tools

8 tools
browse_categoryC

Browse markets in a specific category

Inputs: category (required), limit.

compare_platformsC

Side-by-side odds comparison for markets matching a query

Inputs: query (required).

find_arbitrageC

Find price discrepancies across platforms

Inputs: min_spread.

get_market_oddsC

Get current odds for a specific market

Inputs: platform (required), market_id (required).

get_tracked_marketsB

Get all markets in your watchlist with current prices

Inputs: no named parameters.

list_categoriesC

List available market categories

Inputs: no named parameters.

search_marketsC

Search for prediction markets across platforms

Inputs: query (required), platforms.

track_marketC

Add a market to your tracking watchlist

Inputs: platform (required), market_id (required), alias.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    A3.5/5.0

    Scored across 8 tools

    Disambiguation5/5

    Each tool has a clearly distinct purpose with no ambiguity. For example, 'browse_category' focuses on category-specific browsing, 'search_markets' handles cross-platform search, and 'get_market_odds' retrieves specific market data, ensuring agents can easily differentiate between them.

    Naming Consistency5/5

    All tool names follow a consistent verb_noun pattern using snake_case, such as 'browse_category', 'compare_platforms', and 'track_market'. This uniformity makes the tool set predictable and easy to navigate for agents.

    Tool Count5/5

    With 8 tools, the server is well-scoped for predictive market analysis, covering key operations like browsing, searching, comparing, and tracking. Each tool earns its place without feeling excessive or insufficient for the domain.

    Completeness4/5

    The tool set provides strong coverage for core workflows, including market discovery, comparison, and tracking. A minor gap exists in direct market interaction tools, such as placing bets or managing user accounts, but agents can still perform essential analysis tasks effectively.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      Provides AI-powered tools for searching Polymarket prediction markets and calculating financial metrics like expected value and Kelly bet sizing. It enables users to perform arbitrage scanning, news-based sentiment analysis, and market research through natural language interfaces.
      -
    • A
      license
      A
      quality
      B
      maintenance
      24/7 autonomous monitoring and edge detection for prediction markets (Kalshi & Polymarket). Features causal tree analysis, orderbook depth tracking, cross-venue comparison, and real-time alerts.
      16
      196 npm
      12
      MIT
    • A
      license
      Not graded
      quality
      F
      maintenance
      Unified access to prediction market data from Kalshi and Polymarket, enabling natural language queries for real-time odds, orderbooks, and trade history.
      40 npm
      11
      MIT
    • A
      license
      A
      quality
      D
      maintenance
      Provides search, trending, odds, arbitrage, and category browsing for prediction markets (Polymarket & Kalshi) via the Model Context Protocol, enabling AI agents to access live market data without API keys.
      5
      1
      MIT