get_head_to_head
10 creditsMulti-tablePOST /v1/get_head_to_head
Matchup history between two teams with win/loss records.
Use it when you're previewing a matchup and want to know the rivalry history: who has the edge, recent results, and head-to-head record for a specific season or all-time.
Parameters
team1stringrequired- First team abbreviation
team2stringrequired- Second team abbreviation
seasonstringoptional- Filter to specific season
limitintegeroptional- Max games (1-100, default 20)
leagueenum: nhl | pwhl | ohl | whl | qmjhl | echl | ahl | ushloptional- League. Defaults to nhl. One of: nhl, pwhl, ohl, whl, qmjhl, echl, ahl, ushl.
Notes
- Over MCP, ask for it in plain English and the client calls
get_head_to_headitself. Point any MCP client athttps://mcp.puckapi.com/mcp?key=YOUR_API_KEY. - Each call costs 10 credits, taken before it runs and refunded if the server errors.
- Not the call you need? Find the right call by what you are trying to answer.
Request
curl -X POST https://mcp.puckapi.com/v1/get_head_to_head \
-H "Content-Type: application/json" \
-H "x-api-key: YOUR_API_KEY" \
-d '{
"team1": "BUF",
"team2": "TOR",
"season": "20252026"
}'Response
json
{
"team1": "BUF",
"team2": "TOR",
"record": {
"BUF": 2,
"TOR": 1
},
"total_games": 3,
"games": [
{
"id": "2025020412",
"season": "20252026",
"gameDate": "2025-12-14",
"homeTeam": "TOR",
"awayTeam": "BUF",
"homeScore": 3,
"awayScore": 4,
"gameState": "FINAL",
"venue": "Scotiabank Arena"
},
{
"id": "2025020623",
"season": "20252026",
"gameDate": "2026-01-28",
"homeTeam": "BUF",
"awayTeam": "TOR",
"homeScore": 2,
"awayScore": 5,
"gameState": "FINAL",
"venue": "KeyBank Center"
}
]
}Response fields
team1string- First team abbreviation
team2string- Second team abbreviation
recordobject- Win counts keyed by team abbreviation
record.[TEAM]integer- Wins for that team
total_gamesinteger- Every meeting in range, which the record counts; games lists the latest limit of them
games[].idstring- Game ID
games[].gameDatestring- Date
games[].homeTeamstring- Home team abbreviation
games[].awayTeamstring- Away team abbreviation
games[].homeScoreinteger- Home team score
games[].awayScoreinteger- Away team score
Related endpoints
get_game_probabilities5 cr
Takes the game_id this one returns.
What the market thinks of a game: average implied and fair probability for the moneyline, puck lines and totals
get_game_detail10 cr
Takes the game_id this one returns.
Full game detail including odds snapshots and the goalies who started, with time on ice.
list_teams1 cr
Filters by the same league.
All 32 active NHL teams with divisions, conferences, and arenas.
get_schedule2 cr
Filters by the same league.
Upcoming games for the next N days. Defaults to 7 days.
Try it
500 free credits every month: 50 calls to get_head_to_head, and no card.