The sports data API built for AI-native apps. MCP-ready, SDK-first, validated ML included. API key in 60 seconds.
14-day Developer Sandbox — 200 req/day, core data endpoints, no credit card required
Already have an account? Go to Dashboard →
# One call. Live sports intelligence across 9 sports. curl https://playcallerapp.com/v1/intelligence/news?player=AJ_Brown&limit=1 -H "X-PlayCaller-Key: pc_sbx_your_key"
Every other sports data API sells you numbers. Sportradar at $1,400/month. SportsData.io at $5,000/month. Raw stats, scores, box scores. You build the intelligence yourself.
PlayCaller ships the intelligence pre-assembled.
The GET /v1/feed endpoint returns a complete player intelligence dossier in a single API call: a calibrated confidence score (logistic regression, 20,585 observations, 5 NFL seasons, AUC-ROC 0.697), a validated heat signal identifying players whose opportunity metrics are converging before the market prices it in (AUC-ROC 0.623, 25.6pp quartile lift), a signal breakdown showing what drove each score, and a plain-English synthesis sentence validated against the source data.
The same endpoint covers every sport with its own validated model — not borrowed NFL numbers. NBA confidence: AUC-ROC 0.855, 84.23x decile lift. NBA heat: AUC-ROC 0.740, 40.5pp quartile lift. MLB pitcher trend: AUC-ROC 0.647. MLB batter confidence: AUC-ROC 0.625, 26.98pp quartile lift. NHL confidence: AUC-ROC 0.669, 36.96pp quartile lift. 7 validated models total. Fields with no model stay null rather than fabricated.
No heuristics. No black boxes. Every claim traces to a measured model.
No credit card. 14-day Developer Sandbox starts immediately.
Activation link in inbox. Key generated instantly in pc_sbx_xxxx format.
One GET request, one header. Live sports intelligence in milliseconds.
# Fetch live injury signals (NFL, MLB, NBA) curl https://playcallerapp.com/v1/intelligence/news \ -H "X-PlayCaller-Key: pc_sbx_your_key_here" \ -G -d "severity=high&limit=5"
# pip install requests import requests API_KEY = "pc_sbx_your_key_here" resp = requests.get( "https://playcallerapp.com/v1/intelligence/news", headers={"X-PlayCaller-Key": API_KEY}, params={"severity": "high", "limit": 5} ) data = resp.json() print(data["data"][0]["title"])
// Node.js (fetch built-in ≥v18) or modern browser const API_KEY = "pc_sbx_your_key_here"; const res = await fetch( "https://playcallerapp.com/v1/intelligence/news?severity=high&limit=5", { headers: { "X-PlayCaller-Key": API_KEY } } ); const { data } = await res.json(); console.log(data[0].title);
# Install the official SDK npm install @playcaller/sdk // Full IDE autocomplete + typed responses import { PlayCallerClient } from "@playcaller/sdk"; const client = new PlayCallerClient({ apiKey: "pc_sbx_your_key_here" }); // Typed injury signals — autocomplete works in VS Code / Cursor const injuries = await client.intelligence.getInjuries({ sport: "nfl", severity: "high" }); // Browse by sport namespace const players = await client.nfl.players.list({ team: "KC", position: "WR" }); const games = await client.mlb.games.list({ date: "today" }); const leaders = await client.mlb.scoring.leaders({ position: "SP" });
{ "success": true, "count": 5, "data": [{ "player_name": "Ja'Marr Chase", "team": "CIN", "signal_type": "injury_update", "severity": "high", "title": "Chase limited in practice, questionable for Sunday", "snap_delta": -0.38, "beneficiaries": ["Tee Higgins", "Tyler Boyd"], "source": "ESPN beat · verified" }] }
14-day Developer Sandbox, 200 req/day, core data endpoints, no credit card
Pick any live endpoint, paste your API key, and fire a real request straight from this page — no curl, no Postman. The endpoint list below is read directly from our live OpenAPI spec, so it can't go stale.
Nine sports, 71 endpoints total. Live Now badges confirm production status.
Deep-dives on every sport's endpoints, model outputs, and common integration patterns.
| Sportradar | SportsData.io | API-Sports | PlayCaller | |
|---|---|---|---|---|
| Entry price | $1,400+/mo | $99-149/mo | $10/mo | $0 (Sandbox) / $99/mo |
| Self-serve | No | Limited | Yes | Yes |
| No sales call | No | No | Yes | Yes |
| Intelligence layer | No | No | No | Yes |
| Validated ML model | No | No | No | Yes |
| MCP server | No | No | No | Yes |
| TypeScript + Python SDKs | No | No | No | Yes |
| Semantic player similarity | No | No | No | Yes (pgvector) |
| SSE real-time stream | No | No | No | Yes |
| HMAC-signed webhooks | No | No | No | Yes |
| Free trial | No | Scrambled data | 100 req/day forever | 200 req/day, 14 days, no card |
PlayCaller implements Anthropic's Model Context Protocol over HTTP. Connect Cursor, Claude Desktop, Perplexity, or any MCP-compatible AI to live sports intelligence with a single endpoint.
Package: @playcaller/playcaller-mcp (published to npm)
Add this to your .cursor/mcp.json:
Start with a free 14-day Developer Sandbox — 200 req/day, core data endpoints, no credit card required. Upgrade to a paid tier when you're ready to scale.