NestDaddy

PuckAPI

io.github.noahowsh/puckapi · v1.1.6

NHL and PWHL stats, play-by-play, expected goals and odds. REST API and MCP server. Free to start.

Connect Remote server

Terminal
claude mcp add --transport http puckapi https://mcp.puckapi.com/mcp --header "x-api-key: <X_API_KEY>"
~/.cursor/mcp.json
{
  "mcpServers": {
    "puckapi": {
      "url": "https://mcp.puckapi.com/mcp",
      "headers": {
        "x-api-key": "<X_API_KEY>"
      }
    }
  }
}
.vscode/mcp.json
{
  "servers": {
    "puckapi": {
      "type": "http",
      "url": "https://mcp.puckapi.com/mcp",
      "headers": {
        "x-api-key": "<X_API_KEY>"
      }
    }
  }
}
Claude Desktop
Settings > Connectors > Add custom connector
URL: https://mcp.puckapi.com/mcp

Replace the values in angle brackets with your own. Keys stay on your machine; we never see them.

Tools 28 found in our last check

  • get_standings

    Use when checking where teams rank in their division or conference. Returns points, wins, losses, OT losses, point%, goal differential, goals for/against per game, and 5v5 possession: Corsi%, Fenwick% and expected goals for and against. The possession columns are 5v5 only, so th…

  • get_team_stats

    Use when you need full details for one team: record, goals for and against, league rank, and 5v5 possession (Corsi%, Fenwick%, expected goals for and against). Possession is 5v5 only. Requires a team abbreviation (use list_teams if unsure). Costs 5 credits.

  • list_teams

    Use when you need team abbreviations, or to see all 32 active NHL teams with city, conference, division, and arena. Excludes historical franchises (ATL, ARI). Cheapest tool at 1 credit.

  • get_games

    Use when querying past or future games with filters. Returns scores, teams, venue, and game metadata. For upcoming-only games, prefer get_schedule (2 cr) instead. Costs 5 credits.

  • get_schedule

    Use when checking what games are coming up. Returns only unplayed future games for the next N days (default 7). For past games, use get_games instead. Costs 2 credits.

  • get_game_detail

    Use when you need everything about one game: both teams' full info, all betting odds, and the goalies who started, with their time on ice. Requires a game ID (get one from get_games or get_schedule). Odds for every game from 2019-20 on (and part of the 2019 playoffs). Goalie sta…

  • get_head_to_head

    Use when comparing two teams' history. Returns recent matchups with win/loss record. Can filter by season or get all-time. Costs 10 credits.

  • search_players

    Use when looking up a player by name. Searches 4,900+ players across every season since 2010-11. Returns active players by default; set active=false for retired/historical. Use the returned player ID with get_player_stats for full details. Costs 2 credits.

  • get_player_stats

    Use when you need full details for one player: bio, team, and physical attributes. For skaters, also returns the latest season line (games, goals, assists, points, +/-, PP/SH, shooting%, TOI). For goalies, save%, GAA, GSAX, and trend data. Requires player ID from search_players.…

  • get_goalie_stats

    Use when ranking goalies or comparing goalie performance. Returns a leaderboard sorted by save%, GAA, GSAX, or wins, with a games-played filter. Includes goals saved above expected, high-danger save%, rolling save% and GSAX over the last 10 appearances, form trend and rest days.…

  • get_skater_season_stats

    Use when ranking skaters or comparing scoring. Returns a leaderboard sorted by points, goals, assists, plus/minus, or shots, with a games-played filter. Includes power play and shorthanded production, shooting%, faceoff%, and average time on ice. Seasons from 2010-11 on. Costs 5…

  • get_player_game_log

    Use when you need a player's game-by-game stat lines for a season, not a season total. For skaters: date, opponent, home/away, goals, assists, points, shots, PIM, power-play points, time on ice and plus/minus for each game. For goalies: date, opponent, home/away, decision, shots…

  • get_odds

    Use when checking betting lines. Pass game_id for one game (10 credits): moneyline, puck line and total by bookmaker, opening and closing. Or pass season (optionally with team) for a whole season of closing lines in one call, with final scores, at 10 credits per game returned (a…

  • get_line_movement

    Use when analyzing how betting lines moved over time. Returns time-series snapshots grouped by bookmaker. Most expensive tool (25 cr). If you only need current lines, use get_odds (10 cr) instead. Prices are market information: never work out a stake, payout or profit, recommend…

  • get_player_props

    Use for player prop lines by sportsbook: over/under on points, goals, assists, shots on goal, blocked shots, goalie saves, power-play points, anytime and first goal scorer, from May 2023 (DraftKings, FanDuel, BetMGM, ESPN BET, Pinnacle and others). Pass game_id for every player'…

  • get_prop_history

    Use to see how a player did against his prop line over time: for one market (points, goals, assists, shots on goal, blocked shots, goalie saves, power-play points, or anytime or first goal scorer), one row per game with the closing line (the median across books, or one book's),…

  • get_prop_movement

    Use to see how one player's prop line moved before a game: every capture we hold, book by book and oldest first, with the line, both prices and the minutes before the start. line_change is the last capture's line minus the first's. The number of captures varies by game and book.…

  • get_market_odds

    Use for the extra betting markets of a game as history: the regulation result (three-way, a draw is possible), the 1st period result and puck line, and the 1st, 2nd and 3rd period totals. Pass game_id (from get_schedule or get_games) and market. For each sportsbook it returns th…

  • get_game_probabilities

    Use for what the market thinks of one game, not any one book's price: the average implied probability (margin in) and the fair probability (margin out) for the moneyline, each puck line and each total, with how many books each rests on. Only identical lines are combined. Each bo…

  • get_prop_probabilities

    Use for what the market thinks of the player props in one game, not any one book's price: for each player and each line, the average implied probability (margin in) and the fair probability (margin out), with how many books each rests on. Only identical lines are combined, and a…

  • get_prop_backtest

    Use to test an idea about player props without pulling every row: how often a kind of prop went over or under against what the market implied, across every finished game we hold prices for that fits your filters. Returns the hit rate, its 95% interval, the average implied and fa…

  • get_plays

    Use for play-by-play events: goals, shots, misses, blocks, faceoffs, hits, giveaways, takeaways, penalties, with rink coordinates, strength state (5v5, 5v4), zone, and the players involved. Filter by game, season, team, player (any role), event type, strength, zone, or period. R…

  • get_shot_map

    Use when you want shot locations rather than a list of events: every shot attempt with rink coordinates, shot type, strength, shooter and goalie. Filter by game, or by season plus a team or player. Paginated: follow next_offset, since a season runs past one page and pages are ch…

  • get_shifts

    Use for who was on the ice and when: every player's shifts in one NHL game, each with period, start and end (period clock and seconds from the opening faceoff) and duration, plus the official boxscore time on ice and plus/minus. Filter to one team or player. NHL games from 2010-…

  • get_situation_time

    Use for exact time at each strength: the seconds each team spent at 5v5, 5v4, 4v5, 4v4, 6v5 with the goalie pulled and every other on-ice state in an NHL game, split into regulation and overtime, from the shift charts. Also even / power-play / shorthanded totals, goalie-pulled s…

  • get_predictions

    Use for the model's win probability for each NHL game on the current slate: home and away win probability, the A/B/C confidence grade, start time, plus the model version and when the slate was generated. Takes no arguments (current slate only). Probabilities are the model's own;…

  • get_prop_projections

    Paid plans only (not available on the free plan). Use for the model's projected stat lines for tonight's NHL players: for each game, each skater's projected goals, assists, points and shots with a low-to-high range, and each goalie's projected saves. Skaters also carry over prob…

  • get_alt_lines

    Use for alternate puck lines and totals by sportsbook: every point on each book's ladder with its price (e.g. -8.5 at +240, over 230.5 at +165), for one game. Held for NHL games from the 2023-24 season on, from up to five books (Pinnacle, Bovada, BetMGM and DraftKings, FanDuel o…

Headers

NameDescription
x-api-key
Required, secret
Your PuckAPI API key. Get a free key (500 credits every month) at puckapi.com/signup

Details

Endpointhttps://mcp.puckapi.com/mcp (Streamable HTTP)
First published16 Oct 2026
Last updated16 Oct 2026
Registry nameio.github.noahowsh/puckapi

More search and web servers See all

Listing data from the official MCP registry. Status and tools from NestDaddy's daily check. Browse all MCP servers.