PuckAPI
NHL and PWHL stats, play-by-play, expected goals and odds. REST API and MCP server. Free to start.
Install
Add this to your client's MCP configuration (Claude Desktop: claude_desktop_config.json; Cursor: .cursor/mcp.json; VS Code and others use the same "mcpServers" shape).
claude mcp add --transport http puckapi 'https://mcp.puckapi.com/mcp' --header 'x-api-key: <Your PuckAPI API key. Get a free key (500 credits every month) at puckapi.com/signup>'
{
"mcpServers": {
"puckapi": {
"type": "http",
"url": "https://mcp.puckapi.com/mcp",
"headers": {
"x-api-key": "<Your PuckAPI API key. Get a free key (500 credits every month) at puckapi.com/signup>"
}
}
}
}
Documentation
From the project's README on GitHub, refreshed weekly. Links open on GitHub.
The hockey data API. Stats, odds, and everything between.
REST API and MCP server. Free to start.
Quick Start · Tools · Data · Pricing · REST API
You: "What were last night's NHL scores?"
Claude: [calls get_games → returns scores, periods, shots, goals]
You: "Show me the line movement on the Sabres game"
Claude: [calls get_line_movement → opening line, current line, timestamps, book-by-book]
You: "Compare McDavid and MacKinnon this season"
Claude: [calls get_player_stats x2 → side-by-side goals, assists, points, TOI, shooting %]
Quick Start
Claude Desktop -- add to claude_desktop_config.json:
{
"mcpServers": {
"puckapi": {
"url": "https://mcp.puckapi.com/mcp?key=YOUR_API_KEY"
}
}
}
Claude Code -- one command:
claude mcp add --transport http puckapi \
"https://mcp.puckapi.com/mcp?key=YOUR_API_KEY"
Other MCP clients -- any client supporting Streamable HTTP:
| Setting | Value |
|---|---|
| URL | https://mcp.puckapi.com/mcp?key=YOUR_API_KEY |
| Transport | Streamable HTTP |
Also accepts Authorization: Bearer or x-api-key headers. Connecting and listing tools works without a key; calling a tool needs one.
Get your free key at puckapi.com -- 500 credits, no credit card.
Available Tools
Games -- 4 tools
| Tool | Description |
|---|---|
get_games | Game results with scores, periods, shots, and goals |
get_schedule | Upcoming and past game schedules |
get_game_detail | Full box score for a specific game |
get_head_to_head | Historical matchup data between two teams |
Teams -- 3 tools
| Tool | Description |
|---|---|
get_standings | Current or historical standings by season |
get_team_stats | Team-level stats (goals, shots, PP%, PK%, etc.) |
list_teams | All NHL teams with abbreviations and metadata |
Players -- 5 tools
| Tool | Description |
|---|---|
search_players | Find players by name |
get_player_stats | Skater stats (goals, assists, points, TOI, etc.) |
get_skater_season_stats | Season stats leaderboard -- goals, assists, points, TOI, shooting %, filterable by team and sortable by 5 metrics |
get_goalie_stats | Goalie stats (SV%, GAA, wins, shutouts, etc.) |
get_player_game_log | Game-by-game lines for a skater or goalie in a season: goals, assists, shots, PIM, saves, SV% |
Odds -- 2 tools
| Tool | Description |
|---|---|
get_odds | Opening and closing moneyline, puck line and total by sportsbook, every game from 2019-20 |
get_line_movement | Time-series odds grouped by bookmaker |
Play-by-play -- 2 tools
| Tool | Description |
|---|---|
get_plays | Play-by-play events with rink coordinates, strength state and the players involved |
get_shot_map | Every shot attempt with rink coordinates, shot type, shooter and goalie |
Data Coverage
| Category | Details |
|---|---|
| Games | 23,000+ across 16 seasons |
| Play-by-play | Every event since 2010-11 with rink coordinates (6.8M+ events) |
| Odds | Every game from 2019-20: about 12-14 books a game for 2020-21 to 2023-24, 60+ in 2025-26, and 8 books including Pinnacle captured hourly from October 2026 |
| Line movement | Hourly snapshots from September 2026 |
| Players | 4,800+ skaters and goalies |
| Computed | Expected goals, GSAX, Corsi and Fenwick |
| PWHL | Games, standings, play-by-play and shot locations; pass league: "pwhl" (details) |
| Updates | Games daily; odds captured hourly |
Live coverage by season: historical odds · play-by-play · shot data
Pricing
| Plan | Credits/mo | Price |
|---|---|---|
| Free | 500 every month | $0 |
| Starter | 10,000 | $19/mo |
| Pro | 30,000 | $49/mo |
| Scale | 125,000 | $149/mo |
Tools cost 1 to 25 credits a call (per-tool costs). Wallet top-ups from $5 never expire.
REST API
PuckAPI also offers a standard REST API:
curl -X POST https://mcp.puckapi.com/v1/get_standings \
-H "x-api-key: YOUR_API_KEY"
Full documentation at puckapi.com/docs.
Used by
PuckCast, our NHL predictions site, runs on this API.
Related
| PuckAPI Skills | 28 free Claude Code skills for hockey analytics, betting models, and research |
| puckapi.com | Sign up, dashboard, API docs |
| NHL odds tonight | Every tracked sportsbook's moneyline, puck line and total, refreshed hourly |
| NHL player props today | Points, goals, shots, saves and anytime scorer: the consensus line and the best over and under price per player |
| Shots on goal prop history | How often a player goes over his shots line, game by game, in Python |
Other sports, same tools and key format
| EndzoneAPI | NFL and college football |
| DunkAPI | NBA, WNBA and college basketball |
| FastballAPI | MLB and college baseball |
| StrikerAPI | Soccer, 17 competitions |
| AcesAPI | ATP and WTA tennis |
| BirdieAPI | PGA Tour and other golf tours |
| FighterAPI | UFC, PFL and Bellator |
puckapi.com · API Docs · Skills
MIT License
Frequently asked questions
What is PuckAPI?
NHL and PWHL stats, play-by-play, expected goals and odds. REST API and MCP server. Free to start.
How do I install PuckAPI?
It runs as a remote server. In Claude Code: claude mcp add --transport http puckapi 'https://mcp.puckapi.com/mcp' --header 'x-api-key: <Your PuckAPI API key. Get a free key (500 credits every month) at puckapi.com/signup>'. For other clients, paste the JSON configuration from this page into their MCP settings.
Does PuckAPI need an API key?
Yes. It expects x-api-key, which you set in its configuration.
Is PuckAPI open source?
Yes. Its code is on GitHub under the MIT license.
Who maintains PuckAPI?
It is published by PuckAPI. AI.tn lists it but does not maintain or endorse it.
From the official MCP Registry. Listing is not an endorsement: review a server's code and permissions before giving it access to your data.