Skip to content
PuckAPI

The hockey data API.

The hockey API for stats, odds, and everything between. REST API and MCP server. Free to start.

// Add to your MCP client config
{
  "mcpServers": {
    "puckapi": {
      "url": "https://mcp.puckapi.com/mcp?key=sk_live_..."
    }
  }
}

// Then ask Claude: "List supported teams, then show today's schedule"
// → calls list_teams + get_schedule automatically
22,000+games
107,000+odds records
3,000+players
16seasons

Two ways in. Same data.

Use it as a REST API from any language, or connect an MCP client and query in plain English.

REST API

Direct access

POST to /v1/{endpoint} with any HTTP client. cURL, Python, JavaScript, whatever.

# Get today's standings curl -X POST https://mcp.puckapi.com/v1/get_standings \ -H "x-api-key: sk_live_..."
MCP Protocol

AI tool access

Connect Claude, Cursor, or any MCP client. Ask for data in plain English, it calls the right endpoint.

// Claude Desktop config { "mcpServers": { "puckapi": { "url": "https://mcp.puckapi.com/mcp" } } }

What people build with this

Not hypothetical. These are the use cases that keep coming up.

Prediction models

16 seasons of game results, player stats, and odds to train on. Skip the data cleaning.

Line movement tracking

documented coverage for supported books, games, markets, and snapshots. See where available lines move before game time.

Beyond box scores

1,500+ goalie seasons with GSAX, Corsi, Fenwick, and more. The stats that actually predict outcomes.

Your own tools

12 endpoints of structured data for notebooks, apps, spreadsheets, whatever you build with.

Coverage you can inspect.

Games, players, teams, standings, odds, and line movement across supported hockey datasets. Odds coverage is explicit, not inflated.

22,000+
Games
Regular season, playoffs, and preseason across supported seasons.
107,000+
Odds records
Supported moneyline, spread, and totals snapshots where available.
3,000+
Players
Roster, position, team, jersey, and supported stat lookup data.
16
Seasons
Coverage depends on dataset, endpoint, and historical source availability.
1,509
Goalie seasons
Goalie stat rows including save percentage, GAA, GSAX, wins, and shutouts.
34
Franchises
32 active teams plus historical franchise records represented in the data.

12 endpoints. Zero guesswork.

Every endpoint documented, typed, and tested. Data refreshes daily at 6 AM ET.

list_teams1 cr
All 32 active NHL teams with divisions, conferences, and arenas
get_standings2 cr
Current standings with advanced stats
get_schedule2 cr
Upcoming games for next N days
search_players2 cr
Find players by name, team, or position
get_games5 cr
Query by date, team, season, game state, or type
get_team_stats5 cr
Detailed stats for a specific team with advanced metrics
get_player_stats5 cr
Player bio and team context; includes goalie stats for goalies
get_goalie_stats5 cr
Goalie leaderboard sorted by save%, GAA, GSAX, or wins
get_odds10 cr
Odds by game with bookmaker filters
get_game_detail10 cr
Full game detail with odds and goalie starts
get_head_to_head10 cr
Matchup history with win/loss records
get_line_movement25 cr
Time-series odds grouped by bookmaker

Simple, predictable pricing

Start free with 500 credits. Subscribe for monthly allowances or top up your wallet anytime.

Free
$0
500 wallet credits on signup
  • All 12 endpoints
  • REST API + MCP access
  • No credit card required
Get Started
Starter
$19/mo
10,000 credits/month
  • 10,000 credits/month
  • All 12 endpoints
  • REST API + MCP access
  • Email support
Get Started
MOST POPULAR
Pro
$49/mo
30,000 credits/month
  • 30,000 credits/month
  • All 12 endpoints
  • REST API + MCP access
  • Priority support
Get Started
Scale
$149/mo
125,000 credits/month
  • 125,000 credits/month
  • All 12 endpoints
  • REST API + MCP access
  • Dedicated support
Get Started

vs. the alternatives

PuckAPI
PriceFree (500 credits)RESTYesMCPYesHistory16 supported seasons
Sportradar
Price$2,000+/moRESTYesMCPNoHistoryVaries
SportsDataIO
Price$25/moRESTYesMCPNoHistoryLimited free tier
The Odds API
PriceFree (500 req)RESTYesMCPNoHistoryOdds only
Public hockey data (raw)
PriceFreeRESTUnofficialMCPNoHistoryUndocumented

Stop scraping. Start building.

500 free credits. No credit card. REST API or MCP, your call.