Skip to main content

NBA MCP Server

A Python server implementing Model Context Protocol (MCP) for NBA statistics and live game data.

Overview

This server provides a set of tools for accessing NBA data through the NBA API. It serves as a bridge between applications and the NBA's data services, offering both live game information and historical statistics.

Features

  • Live game data (scoreboard, box scores, play-by-play)
  • Player information and career statistics
  • Team game logs and statistics
  • League standings
  • Game results and schedules

Tools

Live Game Data

  • nba_live_scoreboard

    • Fetch today's NBA scoreboard (live or latest)
    • Returns game IDs, start times, scores, and broadcast details
  • nba_live_boxscore

    • Fetch real-time box score for a given NBA game ID
    • Provides detailed player and team statistics
  • nba_live_play_by_play

    • Retrieve live play-by-play actions for a specific game
    • Includes scoring plays, fouls, timeouts, and substitutions

Player Information

  • nba_common_player_info

    • Retrieve basic information about a player
    • Includes biographical data, height, weight, team, position
  • nba_player_career_stats

    • Obtain a player's career statistics
    • Available in different formats (per game, totals, per 36 minutes)
  • nba_list_active_players

    • Return a list of all currently active NBA players
  • nba_player_game_logs

    • Obtain a player's game statistics within a specified date range

Team Data

  • nba_team_game_logs_by_name

    • Fetch a team's game logs using the team name
    • Avoids needing to know the team's numeric ID
  • nba_fetch_game_results

    • Fetch game results for a given team ID and date range
  • nba_team_standings

    • Fetch NBA team standings for a given season and season type
  • nba_team_stats_by_name

    • Fetch team statistics using the team name
    • Supports different aggregation methods (totals, per game, etc.)
  • nba_all_teams_stats

    • Fetch statistics for all NBA teams across multiple seasons

Schedule Information

  • nba_list_todays_games
    • Returns scoreboard data for any specific date

Usage

The server is implemented using the MCP framework and can be run as a standalone service.

# Start the server
python nba_server.py
# or
mcp run nba_server.py

Configuration

  • The server runs with a 30-second timeout for more reliable operation
  • Signal handlers are implemented for graceful shutdown (Ctrl+C)

Usage with Claude Desktop

Option 1: Using Docker (Recommended)

  1. Clone this repository
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
  1. Install dependencies
pip install -r requirements.txt
  1. Build the Docker image
docker build -t nba_mcp_server .
  1. Run the Docker container
docker run -d -p 5000:5000 --name nba_mcp_server nba_mcp_server
  1. Add this to your claude_desktop_config.json:
{
  "mcpServers": {
    "nba_mcp_server": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "nba_mcp_server",
        "python",
        "nba_server.py"
      ]
    }
  }
}

Option 2: Direct Python Execution

  1. Clone this repository
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
  1. Create a new environment
conda create --name your_env_name python=3.13
conda activate your_env_name
  1. Install dependencies
pip install -r requirements.txt
  1. Run NBA mcp server on the terminal
mcp run nba_server.py
  1. Add this to your claude_desktop_config.json, adjusting the Python path as needed:
{
  "mcpServers": {
    "nba_mcp_server": {
      "command": "/path/to/your/python",
      "args": [
        "/path/to/nba_server.py"
      ]
    }
  }
}

After adding your chosen configuration, restart Claude Desktop to load the NBA server. You'll then be able to use all the NBA data tools in your conversations with Claude.

Technical Details

The server is built on:

  • NBA API (nba_api) Python package
  • MCP for API interface
  • Pydantic for input validation
  • Pandas for data manipulation

License

This MCP server is available under the MIT License.

Metadata

Release files for nba-mcp-server 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for nba-mcp-server 0.1.0
File Size Uploaded
nba_mcp_server-0.1.0.tar.gz 12.5 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for nba-mcp-server 0.1.0
File Interpreter ABI Platform
nba_mcp_server-0.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 23.8 kB

Release files / nba_mcp_server-0.1.0.tar.gz

Download URL nba_mcp_server-0.1.0.tar.gz
Size 12.5 kB
Tags Source
SHA-256 checksum
How to use checksums
3fe75d0e41dcada38d4df5eb2ffc0fa0a9622a7042a9a36b895fba6b46c05b64
BLAKE2b-256 checksum
How to use checksums
cbc4e42c975e2b2b338ddec5539abc74e0fa0e730648b112e1d82daff3497116
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.9

Release files / nba_mcp_server-0.1.0-py3-none-any.whl

Download URL nba_mcp_server-0.1.0-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
2063e22a5814a6f9bd760b30e155f10c017e35c5130485955834a620a87ffc53
BLAKE2b-256 checksum
How to use checksums
d838603cfd755951aab8426078850cccb245dfb83bfade6068b32dcf936a5bf3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.6.9

Release history Release notifications | RSS feed

This release

0.1.0 This release

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page