Sports Odds API for AI Agents & MCP

Add live sports odds to AI agents and apps with the SportsGameOdds MCP server, five SDKs, and LLM-ready docs, so you can tool-call odds, scores, and props from one feed.

Updated June 2026Built on the live SportsGameOdds feed
How it works
  1. 1
    Install the MCP server and expose tools

    Add the sports-odds-api-mcp server to Claude Code, Cursor, or VS Code with your API key, giving the agent tools to list endpoints and fetch live events, odds, teams, and players.

  2. 2
    Ground answers in fairOdds and bookOdds

    Hand the model the consensus so it quotes a real number. fairOdds is the no-vig fair price, bookOdds the vig-inclusive consensus, and byBookmaker holds each book's own price, so it quotes those instead of inventing one.

  3. 3
    Call from an SDK or stream live updates

    For a production backend, use one of the five official SDKs with cursor and nextCursor auto-pagination, or subscribe to the /stream/events Pusher WebSocket on the All-Star plan for push updates.

A sports odds API for MCP is a sports-data backend that an AI agent can call as a tool, fetching live odds, scores, and props at runtime instead of guessing them from training data. SportsGameOdds ships exactly that: the sports-odds-api-mcp MCP server drops straight into Claude Code, Cursor, and VS Code, exposing tools to list endpoints, fetch events/odds/teams/players, search the docs, and monitor usage. It's backed by 85+ books and fairOdds consensus, so your agent grounds every price in real data.

Why build your AI agent on SportsGameOdds

  • An MCP server agents can call directly. The sports-odds-api-mcp package gives an AI tool first-class actions (list endpoints, fetch live events/odds/teams/players, search the documentation, and check usage), so your agent reads real byBookmaker prices at runtime instead of hallucinating them.
  • fairOdds and bookOdds are the grounding signal. Every market ships a no-vig fairOdds consensus and a vig-inclusive bookOdds, so an LLM answering "what's the fair price on this side" cites a computed number from the feed rather than inventing one.
  • Five official SDKs for agent backends. JavaScript/TypeScript, Python, Ruby, Go, and Java all wrap the same feed, so whatever language your agent or tool-server runs in, the request and the normalized schema stay identical.
  • LLM-ready docs the model can read. A /llms.txt index, a full /llms-full.txt dump, a machine-readable OpenAPI spec, and the AI-assisted development doc give a coding agent exact field and parameter context, so generated code uses real oddID and leagueID values.
  • One normalized schema across every book and sport. A shared oddID (format statID-statEntityID-periodID-betTypeID-sideID) identifies the same market everywhere, so an agent reasons over one consistent shape instead of per-book formats.
  • A free Amateur tier to prototype on. 2,500 objects/month with no credit card lets you wire an agent or tool-using app end to end before you ever pay.

How an AI agent works with our data

With an agentic sports app, the prompt is rarely the bottleneck. The hard part is giving the model trustworthy, structured data to act on. Here is how the MCP server, SDKs, and docs map to that.

Install the MCP server and expose tools

Add the sports-odds-api-mcp server to Claude Code, Cursor, or VS Code with your API key, and the agent gains tools to discover endpoints, fetch events and their odds, resolve teams and players, search the docs, and monitor usage. The model picks the right tool for a question, whether it's "today's NFL moneylines" or "props for this player," and gets back a real /events payload to reason over.

Ground answers in fairOdds and bookOdds

To stop a model from inventing prices, hand it the consensus. Each market's fairOdds is the no-vig fair price and bookOdds is the vig-inclusive consensus, while byBookmaker holds each book's own odds and available flag. An agent that quotes a price reads it from the payload, Pinnacle's -140 or the -138 fair line, instead of guessing.

Call from an SDK or stream live updates

For a production agent backend, the five SDKs wrap the same feed in JavaScript/TypeScript, Python, Ruby, Go, and Java, with auto-pagination via cursor/nextCursor. When an app needs push updates rather than polling, the /stream/events endpoint delivers Pusher WebSocket events on the All-Star plan. The MCP server's "Stream events" tool surfaces the same capability for agents.

Example request

Install the MCP server into Claude Code with one command, replacing the key with your own:

claude mcp add sports-game-odds --env SPORTS_ODDS_API_KEY_HEADER="your-api-key-here" -- npx -y sports-odds-api-mcp

Once connected, when the agent fetches a market it receives a trimmed /v2/events odd object it can reason over, with consensus prices plus each book's number:

{
  "points-home-game-ml-home": {
    "oddID": "points-home-game-ml-home",
    "fairOdds": "-138",
    "bookOdds": "-145",
    "byBookmaker": {
      "pinnacle":   { "odds": "-140", "available": true },
      "draftkings": { "odds": "-150", "available": true },
      "fanduel":    { "odds": "-142", "available": true }
    }
  }
}

Here the agent can answer "what's the fair price on the home moneyline" with the de-vigged fairOdds of -138, a number it read rather than one it made up, and surface Pinnacle's -140 as the sharpest book. The agent can call the API directly through MCP tools or via one of the five SDKs, grounded by the docs and the AI-assisted development guide. See the docs for the full field reference.

SportsGameOdds vs wiring odds into an agent yourself

CapabilitySportsGameOddsBuild agent tooling yourself
Agent tool surfacesports-odds-api-mcp MCP server, ready for Claude Code/Cursor/VS CodeHand-write and maintain your own tool definitions
Grounding datafairOdds / bookOdds consensus per marketDe-vig and compute consensus yourself, per book
LLM context/llms.txt, /llms-full.txt, OpenAPI spec, AI docWrite and keep your own model context current
Language coverageFive official SDKs share one schemaBuild and test an HTTP client per language
Schema consistencyOne oddID across every book and sportReconcile each source's market naming
Live updates/stream/events Pusher WebSocket (All-Star)Stand up your own polling and diffing layer
Books per call85+ under byBookmakerOne integration, auth, and rate limit per book

Building the tooling yourself makes sense if you want full control over how the agent calls data. What you take on, though, is scraping each book, normalizing a dozen market formats, de-vigging your own consensus, and keeping LLM context files accurate as the API evolves. The MCP server, SDKs, and /llms-full.txt already absorb that work.

Frequently asked questions

Related use cases

Wire SportsGameOdds into your AI agent

Free plan available. Set up in 5 minutes. No credit card required.