Skip to main content
Glama
sanchorelaxo

NHL MCP Server

by sanchorelaxo
nhl_mcp_server.cpython-310.pyc12.8 kB
o �Rh 1�@s�dZddlmZddlmZmZmZmZddlZddl m Z eddd�Z e �Z e j d ed ed ed eeeffd d��Ze j d ed eeeffdd��Ze j d ed eeeffdd��Ze j d eeeffdd��Ze j dhdeedeed eeeffdd��Ze j dhd ed edeedeed eeeff dd��Ze j dhdeedeed eeeffdd��Ze j dhd ed edeedeed eeeff dd��Ze j d eeeffdd ��Ze j d!ed eeeffd"d#��Ze j d eeeffd$d%��Ze j d&ed eeeffd'd(��Ze j d&ed eeeffd)d*��Ze j d&ed ed ed eeeffd+d,��Ze j d&ed eeeffd-d.��Ze j did&ed eed eeeffd/d0��Ze j did&ed eed eeeffd1d2��Z e j d eeeffd3d4��Z!e j d!ed eeeffd5d6��Z"e j d eeeffd7d8��Z#e j d!ed eeeffd9d:��Z$e j d eeeffd;d<��Z%e j d!ed eeeffd=d>��Z&e j d eeeffd?d@��Z'e j didAeed eeeffdBdC��Z(e j dDed eeeffdEdF��Z)e j dDed eeeffdGdH��Z*e j dDed eeeffdIdJ��Z+e j dDed eeeffdKdL��Z,e j d!ed eeeffdMdN��Z-e j d eeeffdOdP��Z.e j d eeeffdQdR��Z/e j did eed eeeffdSdT��Z0e j did eed eeeffdUdV��Z1e j d eeeffdWdX��Z2e j didYeed eeeffdZd[��Z3e j d eeeffd\d]��Z4e j d^ed eeeffd_d`��Z5e j did!eed eeeffdadb��Z6e j d eefdcdd��Z7e j d eeeffdedf��Z8e9dgk�r�e �:�dSdS)jz� NHL MCP Server A Model Context Protocol server for the NHL API using FastMCP. Provides access to all NHL API endpoints through MCP tools. �)�FastMCP)�Dict�Any�Optional�ListN)� NHLAPIClientzNHL-API-Servera This server provides comprehensive access to the NHL API endpoints. Available functionality includes: - Player information and statistics - Team standings, stats, rosters, and schedules - Game information including scores, play-by-play, and boxscores - League schedules and TV information - Playoff brackets and information - Draft and season information Use the appropriate tools to access specific NHL data. All data is returned in JSON format from the official NHL API. )�name� instructions� player_id�season� game_type�returncC�t�|||�S)z� Get game log for a specific player, season, and game type. Args: player_id: Player ID (e.g., 8478402) season: Season in YYYYYYYY format (e.g., 20232024) game_type: Game type (2 for regular season, 3 for playoffs) )� nhl_client�get_player_game_log)r r r �r�6/home/rjodouin/Documents/git/nhl-mcp/nhl_mcp_server.pyr$� rcC� t�|�S)zu Get detailed information for a specific player. Args: player_id: Player ID (e.g., 8478402) )r�get_player_info�r rrrr0� rcCr)zx Get current season game log for a specific player. Args: player_id: Player ID (e.g., 8478402) )r�get_player_game_log_nowrrrrr:rrcC�t��S)z'Get players currently in the spotlight.)r�get_player_spotlightrrrrrD�r� categories�limitcC� t�||�S)z� Get current skater stats leaders. Args: categories: Optional categories filter (e.g., 'goals', 'assists', 'points') limit: Optional limit (-1 for all results, default varies) )r� get_current_skater_stats_leaders�rrrrrrK� rcC�t�||||�S)a\ Get skater stats leaders for a specific season and game type. Args: season: Season in YYYYYYYY format (e.g., 20232024) game_type: Game type (2 for regular season, 3 for playoffs) categories: Optional categories filter (e.g., 'goals', 'assists', 'points') limit: Optional limit (-1 for all results) )r�get_skater_stats_leaders�r r rrrrrr#V� r#cCr)z� Get current goalie stats leaders. Args: categories: Optional categories filter (e.g., 'wins', 'saves', 'shutouts') limit: Optional limit (-1 for all results) )r� get_current_goalie_stats_leadersr rrrr&er!r&cCr")a[ Get goalie stats leaders for a specific season and game type. Args: season: Season in YYYYYYYY format (e.g., 20232024) game_type: Game type (2 for regular season, 3 for playoffs) categories: Optional categories filter (e.g., 'wins', 'saves', 'shutouts') limit: Optional limit (-1 for all results) )r�get_goalie_stats_leadersr$rrrr'pr%r'cCr)zGet current NHL standings.)r�get_standings_nowrrrrr(rr(�datecCr)zx Get standings for a specific date. Args: date: Date in YYYY-MM-DD format (e.g., '2023-11-10') )r�get_standings_by_date�r)rrrr*�rr*cCr)z*Get standings information for each season.)r�get_standings_seasonrrrrr,�rr,�teamcCr)z� Get current statistics for a specific team. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') )r�get_club_stats_now�r-rrrr.�rr.cCr)z� Get stats overview for each season for a specific team. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') )r�get_club_stats_seasonr/rrrr0�rr0cCr)a Get stats for a specific team, season, and game type. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') season: Season in YYYYYYYY format (e.g., 20232024) game_type: Game type (2 for regular season, 3 for playoffs) )r�get_club_stats)r-r r rrrr1�rr1cCr)z� Get current scoreboard for a specific team. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') )r�get_team_scoreboardr/rrrr2�rr2cCr)z� Get roster for a specific team. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') season: Optional season parameter (defaults to current) )r�get_team_roster�r-r rrrr3�r!r3cCr)z� Get schedule for a specific team. Args: team: Three-letter team code (e.g., 'TOR', 'MTL', 'NYR') season: Optional season parameter (defaults to current) )r�get_team_scheduler4rrrr5�r!r5cCr)zGet current NHL schedule.)r�get_schedule_nowrrrrr6�rr6cCr)zw Get schedule for a specific date. Args: date: Date in YYYY-MM-DD format (e.g., '2023-11-10') )r�get_schedule_by_dater+rrrr7�rr7cCr)zGet current schedule calendar.)r�get_schedule_calendar_nowrrrrr8�rr8cCr)z� Get schedule calendar for a specific date. Args: date: Date in YYYY-MM-DD format (e.g., '2023-11-10') )r�get_schedule_calendar_by_dater+rrrr9�rr9cCr)zGet current daily scores.)r�get_daily_scores_nowrrrrr:�rr:cCr)z{ Get daily scores for a specific date. Args: date: Date in YYYY-MM-DD format (e.g., '2023-11-10') )r�get_daily_scores_by_dater+rrrr;�rr;cCr)z#Get current overall NHL scoreboard.)r�get_scoreboard_nowrrrrr<rr<�includecCr)z{ Get streaming and broadcast information. Args: include: Optional include parameter for filtering )r�get_where_to_watch)r=rrrr> rr>�game_idcCr)zv Get play-by-play information for a specific game. Args: game_id: Game ID (e.g., 2023020204) )r�get_play_by_play�r?rrrr@rr@cCr)zv Get landing page information for a specific game. Args: game_id: Game ID (e.g., 2023020204) )r�get_game_landingrArrrrB!rrBcCr)zr Get boxscore information for a specific game. Args: game_id: Game ID (e.g., 2023020204) )r�get_game_boxscorerArrrrC+rrCcCr)zt Get game story information for a specific game. Args: game_id: Game ID (e.g., 2023020204) )r�get_game_storyrArrrrD5rrDcCr)zz Get TV schedule for a specific date. Args: date: Date in YYYY-MM-DD format (e.g., '2023-11-10') )r�get_tv_schedule_by_dater+rrrrEArrEcCr)zGet current TV schedule.)r�get_tv_schedule_nowrrrrrFKrrFcCr)z!Get playoff overview information.)r�get_playoff_overviewrrrrrGRrrGcCr)zw Get playoff schedule. Args: season: Optional season in YYYYYYYY format (defaults to current) )r�get_playoff_schedule�r rrrrHWrrHcCr)zv Get playoff bracket. Args: season: Optional season in YYYYYYYY format (defaults to current) )r�get_playoff_bracketrIrrrrJarrJcCr)zGet current season information.)r�get_season_inforrrrrKmrrK�yearcCr)zk Get draft information. Args: year: Optional draft year (defaults to most recent) )r�get_draft_info)rLrrrrMrrrMcCr)zGet NHL API meta information.)r� get_meta_inforrrrrN~rrN� postal_codecCr)z� Get information for a postal code (likely for regional content). Args: postal_code: Postal code to lookup )r�get_postal_lookup)rOrrrrP�rrPcCr)z| Get game replay information. Args: date: Optional date in YYYY-MM-DD format (defaults to current) )r�get_game_replaysr+rrrrQ�rrQcCsgd�S)z2Get a list of common NHL team codes for reference.)!�ANA�ARI�BOS�BUF�CGY�CAR�CHI�COL�CBJ�DAL�DET�EDM�FLA�LAK�MIN�MTL�NSH�NJD�NYI�NYR�OTT�PHI�PIT�SJS�SEA�STL�TBL�TOR�UTA�VAN�VGK�WSH�WPGrrrrr�get_team_codes�rrscCsdddd�ddddd �d �S) z8Get help information about season format and game types.z{Seasons are in YYYYYYYY format where first 4 digits are start year, last 4 are end year (e.g., 20232024 for 2023-24 season)zRegular season gamesz Playoff games)�2�3z7Dates should be in YYYY-MM-DD format (e.g., 2023-11-10)i�^�i{D�i�B�)zConnor McDavidz Sidney CrosbyzAlexander Ovechkin)� season_format� game_types� date_format�example_player_idsrrrrr�get_season_format_help�s���rz�__main__)NN)N);�__doc__�fastmcpr�typingrrrr�json�nhl_api_clientr�mcpr�tool�int�strrrrrrr#r&r'r(r*r,r.r0r1r2r3r5r6r7r8r9r:r;r<r>r@rBrCrDrErFrGrHrJrKrMrNrPrQrsrz�__name__�runrrrr�<module>s�  �$   * 2* 2   $  & &    "      " " "  "    �

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sanchorelaxo/mcp-server-sandbox'

If you have feedback or need assistance with the MCP directory API, please join our Discord server