
geminigeorge22/sports-odds-mcp
Developer toolsLive odds from 24 Kambi-powered sportsbooks in one call — BetRivers (12 US states + Ontario), Unibet, Paf, Svenska Spel, ATG. One row per game with every book's price and the best price per outcome.
Overview
Live odds from 24 Kambi-powered sportsbooks in one call — BetRivers (12 US states + Ontario), Unibet, Paf, Svenska Spel, ATG. One row per game with every book's price and the best price per outcome. Pay per call, no subscription. - Apify Store: https://apify.com/publicrecords/sports-odds-api - MCP server: https://mcp.apify.com?tools=publicrecords/sports-odds-api Transport: Streamable HTTP (hosted by Apify, see https://docs.apify.com/mcp). Sign in with Apify OAuth when your client prompts you, or send the header Authorization: Bearer where is your own Apify API token. Never commit a real token. Claude Desktop / claude.ai: Settings → Connectors → Add custom connector, and paste the MCP endpoint URL above. To use a token instead of OAuth, add "headers": { "Authorization": "Bearer " } next to "url". This repo also ships a small MCP server in src/ for clients that only run local stdio servers.
README
Sports Odds API (BetRivers, Unibet & 22 more books)
Languages: English · 简体中文 · 日本語 · 한국어 · Español · Português (Brasil) · Deutsch · Français · Русский · Türkçe
Live odds from 24 Kambi-powered sportsbooks in one call — BetRivers (12 US states + Ontario), Unibet, Paf, Svenska Spel, ATG. One row per game with every book’s price and the best price per outcome. Pay per call, no subscription.
- Apify Store: https://apify.com/publicrecords/sports-odds-api
- MCP server: https://mcp.apify.com?tools=publicrecords/sports-odds-api
MCP endpoint
https://mcp.apify.com?tools=publicrecords/sports-odds-api
Transport: Streamable HTTP (hosted by Apify, see https://docs.apify.com/mcp).
Auth
Sign in with Apify OAuth when your client prompts you, or send the header
Authorization: Bearer where `` is your own Apify API token.
Never commit a real token.
Client setup
Claude
Claude Code:
claude mcp add --transport http sports-odds "https://mcp.apify.com?tools=publicrecords/sports-odds-api"
Claude Desktop / claude.ai: Settings → Connectors → Add custom connector, and paste the MCP endpoint URL above.
Cursor
~/.cursor/mcp.json:
{
"mcpServers": {
"sports-odds": {
"url": "https://mcp.apify.com?tools=publicrecords/sports-odds-api"
}
}
}
VS Code
.vscode/mcp.json:
{
"servers": {
"sports-odds": {
"type": "http",
"url": "https://mcp.apify.com?tools=publicrecords/sports-odds-api"
}
}
}
To use a token instead of OAuth, add "headers": { "Authorization": "Bearer " } next to "url".
Disclosure: I maintain this Actor.
Local stdio server (open source)
This repo also ships a small MCP server in src/ for clients that only run local stdio servers. It starts over stdio, connects to the hosted Apify MCP endpoint above with your own APIFY_TOKEN, and forwards tools/list and tools/call unchanged. The token is only sent in the Authorization header and is never logged.
{
"mcpServers": {
"sports-odds": {
"command": "npx",
"args": ["-y", "github:GeminiGeorge22/sports-odds-mcp"],
"env": { "APIFY_TOKEN": "YOUR_APIFY_TOKEN" }
}
}
}
Or from a clone:
git clone https://github.com/GeminiGeorge22/sports-odds-mcp.git
cd sports-odds-mcp && npm install
APIFY_TOKEN=YOUR_APIFY_TOKEN node src/server.js
Optional env: APIFY_ACTORS (comma-separated subset of the Actors above) and APIFY_MCP_URL (full endpoint override).
Tests run against an in-memory mock server, with no network and no token: npm test. Requires Node.js 18+.
Install
npx -y github:GeminiGeorge22/sports-odds-mcpConfiguration
{
"mcpServers": {
"sports-odds": {
"url": "https://mcp.apify.com?tools=publicrecords/sports-odds-api"
}
}
}