Updated Oct 4, 2026 9:48 PM ET.

For Robots, AI Agents & Developers

iPredictSport publishes machine-readable quantitative tennis predictions, closing-line value (CLV) signals, and fee-aware quarter-Kelly trading recommendations. All endpoints are free, unauthenticated, static JSON served with CORS enabled from our Cloudflare edge network.

1. Machine-Readable API Endpoints

• /predictions.json — Current active match board and market pricing evaluations.
• /track_record.json — Full audited historical ledger of predictions, Brier scores vs market, CLV, and settled returns.
• /mcp_server.py — Zero-dependency Model Context Protocol (MCP) server script.
• /llms.txt & /llms-full.txt — LLM system context and Markov architecture specification.

2. Model Context Protocol (MCP) Integration

Connect your AI assistant (Claude Desktop, Cursor IDE, or Windsurf) directly to our quantitative models in under 30 seconds. Download our standalone MCP script:

curl -O https://ipredictsport.com/mcp_server.py

Add the server to your claude_desktop_config.json or Cursor mcp.json:

{
  "mcpServers": {
    "tennis-predict": {
      "command": "python",
      "args": ["path/to/mcp_server.py"]
    }
  }
}

Tools Exposed by the MCP Server:

  • get_live_board(confidence_min) — Fetches active matches with model win probabilities and tournament details.
  • get_betting_edges(min_edge_pp, confidence) — Returns positive-EV market discrepancies vs Kalshi/Polymarket with fee-adjusted quarter-Kelly stakes and direct execution links.
  • get_track_record() — Returns audited holdout accuracy (66.1%), Brier score edge vs market, and CLV stats.

3. JSON Feed Schema & Semantics

In predictions.json, each item in kalshi_evaluations[] carries:

  • match: Player 1 vs Player 2
  • our_p1 / kalshi_p1: Model win probability vs Kalshi market implied probability for Player 1
  • pick & pick_win_prob: Best-value side determined by the financial layer and our win probability on that side
  • market_price: Current ask price on the pick's side (cents per dollar contract)
  • edge_pp: Fee-aware edge in percentage points ((pick_win_prob - ask) * 100)
  • confidence_band: very_high, high, medium, or low (based on verified player match histories)
  • kelly_quarter: Recommended bankroll fraction to stake using quarter-Kelly allocation
  • trade_action: Platform ticker, direct contract URL, and Kalshi bonus referral URL

4. Python Trading Agent Quickstart

import requests

data = requests.get("https://ipredictsport.com/predictions.json", timeout=10).json()

# Filter for high-conviction positive-EV trades
for eval in data.get("kalshi_evaluations", []):
    edge = eval.get("edge_pp") or 0.0
    conf = eval.get("confidence_band")
    
    if conf in ("high", "very_high") and edge >= 5.0:
        pick = eval["pick"]
        prob = eval["pick_win_prob"] * 100
        ask = eval["market_price"] * 100
        kelly = eval["kelly_quarter"] * 100
        trade_url = eval["trade_action"]["direct_trade_url"]
        
        print(f"[TRADE SIGNAL] {eval['match']} -> {pick}")
        print(f"  Model: {prob:.1f}% | Market: {ask:.0f}c | Edge: {edge:+.1f}pp | Stake: {kelly:.1f}% bankroll")
        print(f"  Execute: {trade_url}
")
Trading on Kalshi? New users receive a $25 welcome bonus through our verified partner link: https://kalshi.com/r/eb2fd257-2bc9-465a-a18c-5e9a0ab4848d

Notice: Predictions are quantitative estimates produced from public data for informational and research purposes only. Not financial or betting advice. Past performance does not guarantee future results.

Tennis board Contact