NBA数据服务

一个提供NBA实时比赛数据和历史统计的Python服务器,通过Model Context Protocol (MCP)实现。

  • by obinopaul
  • Python
  • 本地部署
  • 4 星标
  • 更新于
在 GitHub 查看 obinopaul/nba-mcp-server

使用说明

NBA MCP服务器

一个Python服务器,用于实现NBA统计数据和实时比赛数据的模型上下文协议(MCP)。

概述

该服务器提供了一组通过NBA API访问NBA数据的工具。它是应用程序和NBA数据服务之间的桥梁,提供实时比赛信息和历史统计数据。

特性

  • 实时游戏数据(记分牌、盒子得分、逐局游戏)
  • 球员信息和职业统计
  • 团队游戏日志和统计数据
  • 联赛排名
  • 比赛结果和时间表

工具

实时游戏数据

  • nba_live_芯板

    • 获取今天的NBA记分牌(实时或最新)
    • 返回游戏ID、开始时间、分数和广播详细信息
  • nba_live_boxscore

    • 获取给定NBA比赛ID的实时盒子得分
    • 提供详细的球员和球队统计数据
  • nba_live_play_by_play

    • 按游戏动作检索特定游戏的实时游戏
    • 包括得分、犯规、暂停和换人

玩家信息

  • nba_common_player_info

    • 检索玩家的基本信息
    • 包括个人资料、身高、体重、团队、职位
  • nba_player_care_stats

    • 获取玩家的职业统计数据
    • 提供不同格式(每场比赛、总计、每36分钟)
  • nba_list_active_players

    • 返回当前所有活跃的NBA球员列表
  • nba_player_game_logs

    • 获取玩家在指定日期范围内的游戏统计数据

团队数据

  • nba_team_game_logs_by_name

    • 使用团队名称获取团队的游戏日志
    • 避免需要知道团队的数字ID
  • nba_fetch_game_results

    • 获取给定球队ID和日期范围的比赛结果
  • nba_team_结果

    • 获取给定赛季和赛季类型的NBA球队排名
  • nba_team_starts_by-name

    • 使用团队名称获取团队统计信息
    • 支持不同的聚合方法(总计、每场比赛等)
  • nba_all_teams_stats

    • 获取多个赛季所有NBA球队的统计数据

调度信息

  • nba_list_today_games
    • 返回任何特定日期的记分板数据

用法

该服务器使用MCP框架实现,可以作为独立服务运行。

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

配置

  • 服务器运行时超时30秒,以实现更可靠的操作
  • 信号处理程序用于优雅关机(Ctrl+C)

使用Claude Desktop

选项1:使用Docker(推荐)

  1. 克隆此存储库
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
  1. 安装依赖项
pip install -r requirements.txt
  1. 构建Docker镜像
docker build -t nba_mcp_server .
  1. 运行Docker容器
docker run -d -p 5000:5000 --name nba_mcp_server nba_mcp_server
  1. 将此添加到您的 claude_desktop_config.json:
{
  "mcpServers": {
    "nba_mcp_server": {
      "command": "docker",
      "args": [
        "exec",
        "-i",
        "nba_mcp_server",
        "python",
        "nba_server.py"
      ]
    }
  }
}

选项2:直接执行Python

  1. 克隆此存储库
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
  1. 创建新环境
conda create --name your_env_name python=3.13
conda activate your_env_name
  1. 安装依赖项
pip install -r requirements.txt
  1. 在终端上运行NBA mcp服务器
mcp run nba_server.py
  1. 将此添加到您的 claude_desktop_config.json,根据需要调整Python路径:
{
  "mcpServers": {
    "nba_mcp_server": {
      "command": "/path/to/your/python",
      "args": [
        "/path/to/nba_server.py"
      ]
    }
  }
}

添加所选配置后,重新启动Claude Desktop以加载NBA服务器。然后,您将能够在与克劳德的对话中使用所有NBA数据工具。

技术细节

服务器构建于:

  • NBA API(NBA\API)Python包
  • API接口MCP
  • Pydantic用于输入验证
  • Pandas用于数据操作

许可证

此MCP服务器在MIT许可证下可用。