# odds-api-mcp-server [Health: Active]

**Category:** 🏃 Sports  
**Repository:** https://github.com/odds-api-io/odds-api-mcp-server  
**GitHub Stars:** 2  
**npm Downloads (last month):** 463  
**Views:** 5  
**Installs:** 0  
**Upvotes:** 0  
**Directory Page:** https://allmcps.com/mcp/odds-api-mcp-server

## Description
Live sports betting odds from 265+ bookmakers across 34 sports, with value bets and arbitrage.

## Tools
Capabilities this server exposes over MCP:

- **get_sports** — List all available sports with their name and slug identifier.
- **get_bookmakers** — List all supported bookmakers with their name and active status.
- **get_selected_bookmakers** — Get the authenticated user's currently selected bookmakers.
- **select_bookmakers** — Add bookmakers to the authenticated user's selection.
- **clear_selected_bookmakers** — Clear all selected bookmakers for the authenticated user. Limited to once every 12 hours.
- **get_markets** — List the exact market names served for a sport, with how to read each one (shape), the period it covers and whether it is available prematch and live. Use it before passing markets to other tools; names must match in full, e.g. 'ML' not 'Match Winner'.
- **get_leagues** — Get leagues for a sport. Returns league name, slug, and active event count.
- **get_events** — Get events for a sport with filtering by league, participant, status, date range, bookmaker availability, and pagination support.
- **get_event** — Get a single event by its unique ID.
- **get_live_events** — Get all currently live events across all sports, optionally filtered by sport.
- **search_events** — Search events by team name or text query. Returns up to 10 matching results.
- **get_odds** — Get betting odds for a specific event from selected bookmakers.
- **get_multi_odds** — Get odds for multiple events in a single request (up to 10 events). Counts as only 1 API call.
- **get_odds_movements** — Get historical odds line movements for an event from a bookmaker. Returns opening, latest, and all intermediate price changes for a specific market.
- **get_updated_odds** — Get odds updated since a Unix timestamp for a bookmaker and sport, limited to the markets you name. The timestamp must be at most 90 seconds old. Useful for efficient polling.
- **get_dropping_odds** — Get odds that have dropped the most from opening, based on sharp bookmaker data. Useful for tracking where sharp money is moving. Updated every ~10 seconds. Only available on paid plans. Response includes drop percentages for multiple time windows (sinceOpening, 12h, 24h, 48h). For player prop markets, the response includes market.label with the player name (e.g. 'Carlos Baleba'). Use markets=Player Props to get all player prop markets across all sports (football includes Anytime Goalscorer, Player Passes, Player Shots, Player Shots on Target, etc.). IMPORTANT: Always pass the sport parameter when the user mentions or implies a specific sport — the global (no-sport) endpoint is heavily dominated by player props and will return very few main market results.
- **get_historical_events** — Get finished events for a sport and league within a date range (max 31-day span).
- **get_historical_odds** — Get closing odds and final scores for a finished event from selected bookmakers.
- **get_settlements** — Get what happened in up to 50 events: status (pending, live, awaiting_result, settled, cancelled), final score by period and a `final` flag that says the result is confirmed. Unknown ids are listed in notFound. Paid plans.
- **grade_bets** — Settle up to 50 bets. Each selection is graded as won, lost, void, half_won, half_lost, pending or ungradeable, with a reason, a `final` flag and the score it was based on. Covers 64 markets in 20 sports, including Asian handicap quarter lines, totals, corners, bookings and player props. Football settles on 90 minutes. Paid plans.
- **get_value_bets** — Get positive expected value betting opportunities for a bookmaker. Updated every 5 seconds. EV formula: (Probability x Odds) - 1.
- **get_arbitrage_bets** — Get arbitrage opportunities across bookmakers. Returns profit margin, optimal stake distribution, and direct bet links for each leg.
- **get_participants** — Get teams/participants for a sport, optionally filtered by name search.
- **get_participant** — Get a single participant/team by their unique ID.
- **get_documentation** — Fetch the complete Odds-API.io API documentation.

## Claude Desktop Quick Installation
Install path detected from listing signals. Uses `npx` (confidence: high):

```json
"mcpServers": {
  "odds-api-mcp-server": {
    "command": "npx",
    "args": ["-y","odds-api-mcp-server"],
    "env": {
      "ODDS_API_KEY": ""
    }
  }
}
```

**Requires environment variables:** `ODDS_API_KEY` — the values above are empty placeholders; fill in real credentials before running (see the repository for what each one is for).

## Documentation

## What the odds-api-mcp-server MCP server does

The odds-api-mcp-server MCP server exposes Odds-API.io sports betting data to AI clients through MCP. It covers sports, leagues, bookmakers, events, teams or other participants, current odds, historical results, and market movements across 34 sports. Access requires an Odds-API.io API key supplied through the `ODDS_API_KEY` environment variable.

Agents can use the server to discover available sports and leagues, inspect supported bookmakers, search for events, retrieve live events, or look up a specific event by ID. Odds tools return prices from the selected bookmakers, support requests for up to 10 events, and provide recently changed or historically moving lines. Separate analytics tools identify positive-EV opportunities, arbitrage opportunities with suggested stakes, and notable line drops.

## How it works

The server runs as a local stdio process and communicates with an MCP client. The documented launch path uses `npx -y odds-api-mcp-server`; a global npm installation can instead expose the `odds-api-mcp` command. After startup, the client can invoke the exposed tools and request the server's documentation resources.

Bookmaker selection is stateful within the API workflow: agents can inspect the current selection, add bookmakers, and clear the selection. Odds retrieval uses the selected bookmakers. Event queries support filters including league, status, date range, participant, bookmaker, and pagination. Historical tools focus on finished events, closing odds, and scores.

The server also exposes `odds-api://documentation` and `odds-api://openapi`, giving an AI client access to API documentation and the OpenAPI specification as MCP resources.

## Setup and configuration

Install the package through `npx` in the MCP client configuration, or install it globally with npm. Set `ODDS_API_KEY` to an API key from Odds-API.io. The README provides configuration examples for Claude Desktop, Cursor, VS Code, and Claude Code.

A typical stdio configuration supplies `npx` as the command, passes `-y odds-api-mcp-server` as arguments, and places the API key in the server's environment. Keep the key in the environment configuration rather than embedding it in prompts or tool arguments.

For local development, the repository supports cloning the project, running `npm install`, then using `npm run build` and `npm test`.

## Tools and capabilities

The tool groups cover:

- Sports and leagues: list sports and retrieve active or inactive leagues.
- Bookmakers: list supported bookmakers and manage the current selection.
- Events: filter, search, retrieve, and inspect live events.
- Odds: fetch event odds, query multiple events, inspect line movements, and poll for updates.
- Historical data: find completed events and retrieve closing odds with scores.
- Betting analysis: find value bets, arbitrage opportunities, and dropping odds.
- Participants: list or retrieve teams and other participants for a sport.
- Reference: fetch full API documentation.

The odds-api-mcp-server MCP server is suited to assistants that need structured sports data for research, monitoring, comparison, or analysis rather than a general-purpose web search workflow.

## Limitations and notes

An API key is required to run the server. `get_multi_odds` accepts no more than 10 events per call. Clearing the selected bookmakers is limited to once per 12-hour period according to the tool description. The available data, bookmakers, sports, and API behavior depend on the connected Odds-API.io account and service.

Review the returned event, bookmaker, market, and timing details before using them in another system.

_Full upstream README: https://allmcps.com/mcp/odds-api-mcp-server/readme_

