NHL Stats

by dylangroos

5 stars
Not rated
GitHub

About

Provides real-time NHL sports data retrieval by bridging official web and stats APIs, enabling comprehensive access to team standings, player statistics, game schedules, and roster information through a flexible, multi-endpoint TypeScript implementation.

Details

Author
dylangroos
Repository
dylangroos/nhl-mcp
GitHub stars
5
Categories
Design, Workplace, Developer Tools, Frontend, API
Tags
#analytics, #integration

1. Standings
- League-wide standings with division breakdowns
- Complete team record information

2. Teams
- Basic team identity information
- Current roster information with player details
- Team statistics (skaters and goalies)
- Prospect tracking

3. Players
- Player biographical information
- Current season and career statistics
- Award recognition

4. Schedules
- Current team schedules
- Date-specific league schedules
- Upcoming game information

5. Statistics
- Current statistical leaders (skaters and goalies)
- Team-specific statistical breakdowns

6. Game Information
- Live game scores and status
- Game schedules

Setting up with Highlight

This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:

  1. Download and install Highlight from highlightai.com/download
  2. Navigate to the plugins tab and select "Add Custom Plugin"
  3. Configure the plugin with the settings below
    Plugin Name NHL Stats
    Command (node, npx, python, etc.) npx
    Arguments
    • Argument 1 -y
    • Argument 2 @highlight/mcp-server

    Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.

  4. Enable "Start Automatically" if you want the plugin to start when Highlight launches

From the repository

1. Clone the repository:

   git clone https://github.com/yourusername/nhl-mcp.git
cd nhl-mcp

2. Install dependencies:

   npm install

3. Configure API credentials:
```
cp .env.example .env

get-team

Retrieve basic team information.

get-team-roster

Get current team roster.

get-team-stats

Get team statistics.

get-team-prospects

Get team prospect information.

get-player-landing

Get detailed player information.

get-current-standings

Get current NHL standings.

get-schedule

Get general schedule information.

get-current-schedule

Get a team's upcoming schedule.

get-date-schedule

Get schedule for a specific date.

get-current-stat-leaders

Get current statistical leaders.

get-current-goalie-leaders

Get current goalie statistical leaders.

get-scores-now

Get current scores and game states.

Claude Desktop / Cursor

Paste into your MCP client config file to install this server.

{
    "mcpServers": {
        "nhl stats": {
            "env": {},
            "args": [
                "-y",
                "@highlight/mcp-server"
            ],
            "command": "npx"
        }
    }
}

Linux

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Macos

{
    "env": [],
    "args": [
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "npx"
}

Windows

{
    "env": [],
    "args": [
        "/c",
        "npx",
        "-y",
        "@highlight/mcp-server"
    ],
    "command": "cmd"
}

NHL API - Model Context Protocol

A TypeScript implementation of the NHL API using the Model-Context Protocol pattern. This MCP server provides access to NHL data including teams, players, standings, schedules, and statistics.

Overview

This library provides a clean interface to the NHL's official APIs using the Model-Context Protocol (MCP). It allows you to fetch data from the NHL's APIs and provides it in a structured, easy-to-use format through MCP tools.

📊 Current State

As of March 10, 2025, the platform provides the following functionality:

✅ Working Features

1. Standings
- League-wide standings with division breakdowns
- Complete team record information

2. Teams
- Basic team identity information
- Current roster information with player details
- Team statistics (skaters and goalies)
- Prospect tracking

3. Players
- Player biographical information
- Current season and career statistics
- Award recognition

4. Schedules
- Current team schedules
- Date-specific league schedules
- Upcoming game information

5. Statistics
- Current statistical leaders (skaters and goalies)
- Team-specific statistical breakdowns

6. Game Information
- Live game scores and status
- Game schedules

❌ Issues Identified

1. Team Information Gaps
- Team division and conference information missing in team lookup
- Basic team data incomplete (city/location details absent)

2. Game Details
- Limited game state information for in-progress games
- Play-by-play data implementation needs further testing

3. Historical Data
- Seasonal historical data access needs verification
- Historical schedule retrieval requires additional testing

4. UI Integration
- No current UI components for data visualization
- Raw data format requires transformation for frontend display

📝 TODO List

High Priority

- [ ] Fix team information API to include complete team details (division, conference, location)
- [ ] Implement more detailed game state tracking for live games
- [ ] Create data transformation layers for UI integration
- [ ] Complete testing of historical data endpoints

Medium Priority

- [ ] Develop standard data visualization components
- [ ] Add player image integration
- [ ] Implement team logo/brand assets
- [ ] Create search functionality across all data types

Low Priority

- [ ] Build caching system for frequently accessed data
- [ ] Add fantasy hockey integration points
- [ ] Develop news/media integration
- [ ] Add social media content connections

🚀 Getting Started

1. Clone the repository:

   git clone https://github.com/yourusername/nhl-mcp.git
cd nhl-mcp

2. Install dependencies:

   npm install

3. Configure API credentials:

   cp .env.example .env
# Edit .env with your API keys

4. Start the development server:

   npm run dev

🔧 API Reference

The NHL-MCP platform provides the following core API endpoints:

Teams

- get-team: Retrieve basic team information - get-team-roster: Get current team roster - get-team-stats: Get team statistics - get-team-prospects: Get team prospect information

Players

- get-player-landing: Get detailed player information

Standings

- get-current-standings: Get current NHL standings

Schedule

- get-schedule: Get general schedule information - get-current-schedule: Get a team's upcoming schedule - get-date-schedule: Get schedule for a specific date

Statistics

- get-current-stat-leaders: Get current statistical leaders - get-current-goalie-leaders: Get current goalie statistical leaders

Games

- get-scores-now: Get current scores and game states

📄 License

This project is licensed under the MIT License - see the LICENSE file for details.

🤝 Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

1. Fork the repository
2. Create your feature branch (git checkout -b feature/amazing-feature)
3. Commit your changes (git commit -m 'Add some amazing feature')
4. Push to the branch (git push origin feature/amazing-feature)
5. Open a Pull Request

📞 Contact

Project Maintainer: Dylan Groos

---

Note: This README documents the current state of the NHL-MCP project based on testing conducted on March 10, 2025. The platform accesses NHL data which is subject to terms and conditions set by the National Hockey League.

No reviews yet — be the first

Sign in to leave a review

Use Google, GitHub, or an email account so ratings stay tied to real people.

Email sign in

No reviews posted yet.