NBA MCP Server について
NBA MCP Server は、MCP クライアントに NBA のライブデータと過去の統計を提供する Python サーバーです。選手、チーム、順位、試合結果、日程を扱うツールを備えています。
主な機能
- 01ライブスコア、ボックススコア、プレー情報の取得
- 02選手情報と通算成績の検索
- 03チームの試合記録と統計の検索
- 04リーグ順位の確認
- 05試合結果と日程の取得
活用シーン
- 01ライブスコアと試合展開の確認
- 02選手の通算成績や指定期間の統計の確認
- 03チーム統計と順位の比較
- 04日付またはチーム別の試合検索
MCP 対応
ライブ試合情報や過去の統計を含む NBA API データを、MCP ツール経由でクライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
NBA MCP サーバー
NBA の統計情報と試合のライブデータに対応する Model Context Protocol(MCP)を実装した Python サーバーです。
概要
このサーバーは、NBA API を通じて NBA データにアクセスするためのツールセットを提供します。アプリケーションと NBA のデータサービスをつなぐ役割を果たし、試合のライブ情報と過去の統計情報の両方を利用できます。
特長
- 試合のライブデータ(スコアボード、ボックススコア、プレーごとの記録)
- 選手情報とキャリア統計
- チームの試合ログと統計
- リーグ順位
- 試合結果とスケジュール
ツール
試合のライブデータ
-
nba_live_scoreboard
- 本日の NBA スコアボード(ライブまたは最新)を取得します
- 試合 ID、開始時刻、スコア、放送の詳細を返します
-
nba_live_boxscore
- 指定した NBA 試合 ID のリアルタイムのボックススコアを取得します
- 選手とチームの詳細な統計情報を提供します
-
nba_live_play_by_play
- 特定の試合のライブのプレーごとの記録を取得します
- 得点プレー、ファウル、タイムアウト、選手交代が含まれます
選手情報
-
nba_common_player_info
- 選手の基本情報を取得します
- 経歴データ、身長、体重、所属チーム、ポジションが含まれます
-
nba_player_career_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_standings
- 指定したシーズンとシーズン区分の NBA チーム順位を取得します
-
nba_team_stats_by_name
- チーム名を使用してチームの統計を取得します
- さまざまな集計方法(合計、試合あたりなど)に対応しています
-
nba_all_teams_stats
- 複数のシーズンにわたる NBA 全チームの統計を取得します
スケジュール情報
- nba_list_todays_games
- 任意の日付のスコアボードデータを返します
使用方法
このサーバーは MCP フレームワークを使用して実装されており、スタンドアロンサービスとして実行できます。
# Start the server
python nba_server.py
# or
mcp run nba_server.py
設定
- より安定して動作するよう、サーバーのタイムアウトは 30 秒に設定されています
- 正常にシャットダウンするためのシグナルハンドラーが実装されています(Ctrl+C)
Claude Desktop での使用方法
オプション 1:Docker を使用する(推奨)
- このリポジトリをクローンします
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
- 依存関係をインストールします
pip install -r requirements.txt
- Docker イメージをビルドします
docker build -t nba_mcp_server .
- Docker コンテナを実行します
docker run -d -p 5000:5000 --name nba_mcp_server nba_mcp_server
- 以下を
claude_desktop_config.jsonに追加します。
{
"mcpServers": {
"nba_mcp_server": {
"command": "docker",
"args": [
"exec",
"-i",
"nba_mcp_server",
"python",
"nba_server.py"
]
}
}
}
オプション 2:Python を直接実行する
- このリポジトリをクローンします
git clone https://github.com/obinopaul/nba-mcp-server.git
cd nba-mcp-server
- 新しい環境を作成します
conda create --name your_env_name python=3.13
conda activate your_env_name
- 依存関係をインストールします
pip install -r requirements.txt
- ターミナルで NBA MCP サーバーを実行します
mcp run nba_server.py
- 必要に応じて Python のパスを調整し、以下を
claude_desktop_config.jsonに追加します。
{
"mcpServers": {
"nba_mcp_server": {
"command": "/path/to/your/python",
"args": [
"/path/to/nba_server.py"
]
}
}
}
選択した設定を追加したら、Claude Desktop を再起動して NBA サーバーを読み込みます。これで、Claude との会話で NBA データツールをすべて使用できるようになります。
技術詳細
このサーバーは以下を使用して構築されています。
- NBA API(nba_api)Python パッケージ
- API インターフェース用の MCP
- 入力検証用の Pydantic
- データ操作用の Pandas
ライセンス
この MCP サーバーは MIT ライセンスのもとで利用できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
