get_game_detail
Full game detail with team stats, starting QBs, odds, weather, and officials
When to use it
You need everything about one game on one call: box score for both teams, per-book odds, officials, weather, surface.
Parameters
| Name | Type | Required | Description |
|---|---|---|---|
| game_id | string | yes | Game id, e.g. 2025_01_KC_BUF |
Request
curl -X POST https://football-mcp-production.up.railway.app/v1/get_game_detail \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"game_id": "2025_01_KC_LAC"
}'Over MCP, ask for it in plain English and the client calls get_game_detail itself. Point any MCP client at https://football-mcp-production.up.railway.app/mcp?key=YOUR_API_KEY.
Response
{
"game": {
"game_id": "2025_01_KC_LAC",
"season": 2025,
"game_type": "REG",
"week": 1,
"gameday": "2025-09-05",
"weekday": "Friday",
"kickoff": "2025-09-06T00:00:00.000Z",
"away_team": "KC",
"home_team": "LAC",
"away_score": 21,
"home_score": 27,
"result": 6,
"total": 48,
"overtime": 0,
"status": "FINAL",
"location": "Neutral",
"stadium": "SoFi Stadium",
"roof": "dome",
"surface": null,
"temp": null,
"wind": null,
"div_game": true,
"away_rest": 7,
"home_rest": 7,
"spread_line": -3,
"total_line": 47.5,
"away_moneyline": -175,
"home_moneyline": 145,
"away_qb_name": "Patrick Mahomes",
"home_qb_name": "Justin Herbert",
"away_qb_id": "00-0033873",
"home_qb_id": "00-0036355",
"away_coach": "Andy Reid",
"home_coach": "Jim Harbaugh",
"referee": "Carl Cheffers",
"espn_id": "401772714",
"pfr_id": "202509050sdg"
},
"home_team": {
"abbrev": "LAC",
"name": "Los Angeles Chargers",
"nick": "Chargers",
"conference": "AFC",
"division": "AFC West",
"teamId": "4400",
"color": "#007BC7",
"color2": "#ffc20e",
"color3": "#ffb612",
"color4": "#001532",
"logoEspn": "https://a.espncdn.com/i/teamlogos/nfl/500/lac.png",
"logoWikipedia": "https://upload.wikimedia.org/wikipedia/en/thumb/7/72/NFL_Chargers_logo.svg/100px-NFL_Chargers_logo.svg.png",
"logoSquared": "https://github.com/nflverse/nflverse-pbp/raw/master/squared_logos/LAC.png",
"wordmark": "https://github.com/nflverse/nflverse-pbp/raw/master/wordmarks/LAC.png",
"active": true,
"relocatedTo": null
},
"away_team": {
"abbrev": "KC",
"name": "Kansas City Chiefs",
"nick": "Chiefs",
"conference": "AFC",
"division": "AFC West",
"teamId": "2310",
"color": "#E31837",
"color2": "#FFB612",
"color3": "#000000",
"color4": "#e31837",
"logoEspn": "https://a.espncdn.com/i/teamlogos/nfl/500/kc.png",
"logoWikipedia": "https://upload.wikimedia.org/wikipedia/en/thumb/e/e1/Kansas_City_Chiefs_logo.svg/100px-Kansas_City_Chiefs_logo.svg.png",
"logoSquared": "https://github.com/nflverse/nflverse-pbp/raw/master/squared_logos/KC.png",
"wordmark": "https://github.com/nflverse/nflverse-pbp/raw/master/wordmarks/KC.png",
"active": true,
"relocatedTo": null
},
"consensus_closing": {
"spread_line": -3,
"total_line": 47.5,
"home_moneyline": 145,
"away_moneyline": -175
},
"team_stats": {
"home": {
"id": 18,
"season": 2025,
"week": 1,
"team": "LAC",
"seasonType": "REG",
"gameId": "2025_01_KC_LAC",
"opponentTeam": "KC",
"completions": 25,
"attempts": 34,
"passingYards": 318,
"passingTds": 3,
"passingInterceptions": 0,
"sacksSuffered": 3,
"sackYardsLost": -14,
"sackFumbles": 0,
"sackFumblesLost": 0,
"passingAirYards": 342,
"passingYardsAfterCatch": 134,
"passingFirstDowns": 16,
"passingEpa": 17.567263,
"passingCpoe": 5.788768,
"passing2ptConversions": 0,
"passing10": 12,
"passing16": 7,
"passing20": 4,
"passing40": 0,
"carries": 25,
"rushingYards": 90,
"rushingTds": 0,
"rushingFumbles": 0,
"rushingFumblesLost": 0,
"rushingFirstDowns": 6,
"rushingEpa": -0.23139648,
"rushing2ptConversions": 0,
"rushing10": 2,
"rushing12": 1,
"rushing20": 0,
"rushing40": 0,
"receptions": 25,
"targets": 34,
"receivingYards": 318,
"receivingTds": 3,
"receivingFumbles": 1,
"receivingFumblesLost": 0,
"receivingAirYards": 342,
"receivingYardsAfterCatch": 134,
"receivingFirstDowns": 16,
"receivingEpa": 21.656591,
"receiving2ptConversions": 0,
"receiving10": 12,
"receiving16": 7,
"receiving20": 4,
"receiving40": 0,
"specialTeamsTds": 0,
"defTacklesSolo": 36,
"defTacklesWithAssist": 0,
"defTackleAssists": 24,
"defTacklesForLoss": 3,
"defTacklesForLossYards": 10,
"defFumblesForced": 0,
"defSacks": 2,
"defSackYards": 9,
"defQbHits": 8,
"defInterceptions": 0,
"defInterceptionYards": 0,
"defPassDefended": 4,
"defTds": 0,
"defFumbles": 0,
"defSafeties": 0,
"defPuntBlocks": 0,
"defPatBlocks": 0,
"defFgBlocks": 0,
"def2ptAtts": 0,
"def2ptMade": 0,
"miscYards": 0,
"fumbleRecoveryOwn": 0,
"fumbleRecoveryYardsOwn": 0,
"fumbleRecoveryOpp": 0,
"fumbleRecoveryYardsOpp": 0,
"fumbleRecoveryTds": 0,
"penalties": 6,
"penaltyYards": 49,
"fumblesForcedByOpp": 1,
"fumblesNotForced": 0,
"fumblesOutOfBounds": 1,
"fumblesTotal": 1,
"fumblesLostTotal": 0,
"puntReturns": 0,
"puntReturnYards": 0,
"kickoffReturns": 3,
"kickoffReturnYards": 67,
"fgMade": 2,
"fgAtt": 2,
"fgMissed": 0,
"fgBlocked": 0,
"fgLong": 39,
"fgPct": 1,
"fgMade019": 0,
"fgMade2029": 0,
"fgMade3039": 2,
"fgMade4049": 0,
"fgMade5059": 0,
"fgMade60": 0,
"fgMissed019": 0,
"fgMissed2029": 0,
"fgMissed3039": 0,
"fgMissed4049": 0,
"fgMissed5059": 0,
"fgMissed60": 0,
"fgMadeList": "39;36",
"fgMissedList": null,
"fgBlockedList": null,
"fgMadeDistance": 75,
"fgMissedDistance": 0,
"fgBlockedDistance": 0,
"patMade": 3,
"patAtt": 3,
"patMissed": 0,
"patBlocked": 0,
"patPct": 1,
"gwfgMade": 0,
"gwfgAtt": 0,
"gwfgMissed": 0,
"gwfgBlocked": 0,
"gwfgDistance": 0,
"ptAtt": 2,
"ptBlocked": 0,
"ptLong": 56,
"ptYards": 106,
"ptInside20": 0,
"ptOutOfBounds": 0,
"ptDowned": 0,
"ptTouchback": 0,
"ptFairCaught": 0,
"ptReturned": 2,
"ptReturnYards": 7,
"ptReturnTds": 0,
"ptNetYards": 99,
"timeouts": 1
},
"away": {
"id": 16,
"season": 2025,
"week": 1,
"team": "KC",
"seasonType": "REG",
"gameId": "2025_01_KC_LAC",
"opponentTeam": "LAC",
"completions": 24,
"attempts": 39,
"passingYards": 258,
"passingTds": 1,
"passingInterceptions": 0,
"sacksSuffered": 2,
"sackYardsLost": -9,
"sackFumbles": 0,
"sackFumblesLost": 0,
"passingAirYards": 271,
"passingYardsAfterCatch": 116,
"passingFirstDowns": 9,
"passingEpa": 3.4485526,
"passingCpoe": -5.9927764,
"passing2ptConversions": 0,
"passing10": 9,
"passing16": 4,
"passing20": 3,
"passing40": 1,
"carries": 17,
"rushingYards": 98,
"rushingTds": 1,
"rushingFumbles": 0,
"rushingFumblesLost": 0,
"rushingFirstDowns": 8,
"rushingEpa": 8.906441,
"rushing2ptConversions": 0,
"rushing10": 5,
"rushing12": 1,
"rushing20": 0,
"rushing40": 0,
"receptions": 24,
"targets": 38,
"receivingYards": 258,
"receivingTds": 1,
"receivingFumbles": 0,
"receivingFumblesLost": 0,
"receivingAirYards": 271,
"receivingYardsAfterCatch": 116,
"receivingFirstDowns": 9,
"receivingEpa": 5.5701094,
"receiving2ptConversions": 0,
"receiving10": 9,
"receiving16": 4,
"receiving20": 3,
"receiving40": 1,
"specialTeamsTds": 0,
"defTacklesSolo": 40,
"defTacklesWithAssist": 2,
"defTackleAssists": 18,
"defTacklesForLoss": 6,
"defTacklesForLossYards": 17,
"defFumblesForced": 1,
"defSacks": 3,
"defSackYards": 14,
"defQbHits": 4,
"defInterceptions": 0,
"defInterceptionYards": 0,
"defPassDefended": 2,
"defTds": 0,
"defFumbles": 0,
"defSafeties": 0,
"defPuntBlocks": 0,
"defPatBlocks": 0,
"defFgBlocks": 0,
"def2ptAtts": 0,
"def2ptMade": 0,
"miscYards": 0,
"fumbleRecoveryOwn": 1,
"fumbleRecoveryYardsOwn": 0,
"fumbleRecoveryOpp": 0,
"fumbleRecoveryYardsOpp": 0,
"fumbleRecoveryTds": 0,
"penalties": 10,
"penaltyYards": 71,
"fumblesForcedByOpp": 0,
"fumblesNotForced": 1,
"fumblesOutOfBounds": 0,
"fumblesTotal": 1,
"fumblesLostTotal": 0,
"puntReturns": 2,
"puntReturnYards": 7,
"kickoffReturns": 5,
"kickoffReturnYards": 147,
"fgMade": 3,
"fgAtt": 3,
"fgMissed": 0,
"fgBlocked": 0,
"fgLong": 59,
"fgPct": 1,
"fgMade019": 0,
"fgMade2029": 1,
"fgMade3039": 1,
"fgMade4049": 0,
"fgMade5059": 1,
"fgMade60": 0,
"fgMissed019": 0,
"fgMissed2029": 0,
"fgMissed3039": 0,
"fgMissed4049": 0,
"fgMissed5059": 0,
"fgMissed60": 0,
"fgMadeList": "35;59;27",
"fgMissedList": null,
"fgBlockedList": null,
"fgMadeDistance": 121,
"fgMissedDistance": 0,
"fgBlockedDistance": 0,
"patMade": 0,
"patAtt": 1,
"patMissed": 1,
"patBlocked": 0,
"patPct": 0,
"gwfgMade": 0,
"gwfgAtt": 0,
"gwfgMissed": 0,
"gwfgBlocked": 0,
"gwfgDistance": 0,
"ptAtt": 3,
"ptBlocked": 0,
"ptLong": 40,
"ptYards": 116,
"ptInside20": 1,
"ptOutOfBounds": 1,
"ptDowned": 1,
"ptTouchback": 0,
"ptFairCaught": 1,
"ptReturned": 0,
"ptReturnYards": 0,
"ptReturnTds": 0,
"ptNetYards": 116,
"timeouts": 6
}
},
"odds": {
"opening_closing": [],
"latest": []
},
"officials": []
}Response fields
| Field | Type | Description |
|---|---|---|
| game | object | |
| game.game_id | string | |
| game.season | number | |
| game.game_type | string | |
| game.week | number | |
| game.gameday | string | |
| game.weekday | string | |
| game.kickoff | string | |
| game.away_team | string | |
| game.home_team | string | |
| game.away_score | number | |
| game.home_score | number | |
| game.result | number | |
| game.total | number | |
| game.overtime | number | |
| game.status | string | |
| game.location | string | |
| game.stadium | string | |
| game.roof | string | |
| game.surface | null | |
| game.temp | null | |
| game.wind | null | |
| game.div_game | boolean | |
| game.away_rest | number | |
| game.home_rest | number | |
| game.spread_line | number | |
| game.total_line | number | |
| game.away_moneyline | number | |
| game.home_moneyline | number | |
| game.away_qb_name | string | |
| game.home_qb_name | string | |
| game.away_qb_id | string | |
| game.home_qb_id | string | |
| game.away_coach | string | |
| game.home_coach | string | |
| game.referee | string | |
| game.espn_id | string | |
| game.pfr_id | string | |
| home_team | object | |
| home_team.abbrev | string |
Related endpoints
Takes the team this one returns.
Team depth chart by week
Takes the team this one returns.
Team totals and per-week lines with EPA, success rate, and situational splits
Returns the game_id this one takes.
Matchup history with win/loss records and margins
Takes the game_id this one returns.
Play-by-play with EPA, win probability, situation filters, and optional FTN charting
Try it
500 credits free on signup — 50 calls to get_game_detail — and no card.