HoopsAPI basketball odds
Live basketball odds from 6 bookmakers: NBA, EuroLeague and 100+ competitions, plus closing lines
Should I use this
Quality & Safety
Findings (1)
- LOWin get_game
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"basketball-odds": {
"url": "https://hoopsapi.com/mcp"
}
}
}Remote endpoints
https://hoopsapi.com/mcpstreamable-httpWhat it can do
Tool inventory
Tools (6)
🟢list_competitions
Basketball competitions that have upcoming games with odds, with the number of games in each. Use it to find the exact competition name for the other tools.
Input Schema
{
"type": "object",
"properties": {}
}🟢list_games(competition, include_periods)
Upcoming games in one competition with each bookmaker's main moneyline, handicap (spread, line = home team's handicap) and total, in decimal odds. Full game only unless include_periods is true.
Input Schema
{
"type": "object",
"properties": {
"competition": {
"type": "string",
"description": "Competition name, case-insensitive, e.g. \"NBA\" or \"Europe - Euroleague\" (see list_competitions)"
},
"include_periods": {
"type": "boolean",
"description": "Also return halves and quarters (larger response)",
"default": false
}
},
"required": [
"competition"
]
}🟢get_game(game_id, include_alternate_lines)
One game by id with every bookmaker's main lines for every period. Works for finished games too, returning their closing odds.
Input Schema
{
"type": "object",
"properties": {
"game_id": {
"type": "integer"
},
"include_alternate_lines": {
"type": "boolean",
"description": "Also return every alternate handicap and total line (larger response)",
"default": false
}
},
"required": [
"game_id"
]
}🟡get_game_history(game_id, provider, market, period, limit)
Every price change for a game, newest first (Data plan). Use it for line movement and closing odds.
Input Schema
{
"type": "object",
"properties": {
"game_id": {
"type": "integer"
},
"provider": {
"type": "string",
"description": "Only this bookmaker, e.g. pinnacle (see list_providers)"
},
"market": {
"type": "string",
"enum": [
"moneyline",
"spread",
"total",
"team_total_home",
"team_total_away"
]
},
"period": {
"type": "string",
"enum": [
"ft",
"h1",
"h2",
"q1",
"q2",
"q3",
"q4"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 5000,
"default": 100
}
},
"required": [
"game_id"
]
}🟢list_discrepancies(competition, period, limit)
The biggest cross-bookmaker differences on main lines for upcoming games: moneyline prices, handicap lines and totals (Pro and Data plans).
Input Schema
{
"type": "object",
"properties": {
"competition": {
"type": "string"
},
"period": {
"type": "string",
"enum": [
"ft",
"h1",
"h2",
"q1",
"q2",
"q3",
"q4"
],
"default": "ft"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 20,
"default": 5
}
}
}🟢list_providers
The bookmakers covered and when each was last collected.
Input Schema
{
"type": "object",
"properties": {}
}Community
Evidence