Soccer MCP Server について
Soccer MCP Serverは、API-Footballを通じてサッカーデータを提供するMCPサービスです。リーグ、チーム、選手、試合の情報に加え、過去の統計とライブデータを扱います。
主な機能
- 01リーグ順位・試合日程・情報
- 02チーム情報と試合検索
- 03選手プロフィールとシーズン統計
- 04試合イベントと詳細統計
- 05ライブ試合データとタイムライン
活用シーン
- 01リーグ順位と日程の確認
- 02複数シーズンの選手統計の比較
- 03試合イベントや統計の確認
- 04チームの進行中の試合を追跡
MCP 対応
MCPクライアントにAPI-Footballのデータツールを公開し、リーグ、チーム、選手、試合、ライブ情報を提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
サッカー MCP サーバー
API-Football サービスを使用して、サッカーの統計情報とライブ試合データを提供する Model Context Protocol(MCP)を実装した Python サーバーです。
概要
このサーバーは、API-Football API を通じてサッカーデータにアクセスするための包括的なツールを提供します。アプリケーションとサッカーデータサービスをつなぎ、世界中のリーグ、チーム、選手のライブ試合情報と過去の統計情報の両方を利用できます。
機能
- リーグデータ(順位表、試合日程、スケジュール)
- チーム情報と試合日程
- 選手の統計情報とプロフィール
- ライブ試合データ(イベント、統計情報、タイムライン)
- 試合分析(統計情報、イベント)
設定
このサーバーには、API-Football サービスを利用するための RapidAPI の API キーが必要です。
- RapidAPI でアカウントを作成します
- API-Football API に登録します
- 環境変数を設定します。
RAPID_API_KEY_FOOTBALL=your_api_key_here
ツール
リーグデータ
-
get_league_id_by_name
- 指定したリーグ名のリーグ ID を取得します
- 例:
get_league_id_by_name(league_name="Premier League")
-
get_all_leagues_id
- ID 付きのすべてのサッカーリーグの一覧を取得します
- 国で絞り込めます
- 例:
get_all_leagues_id(country=["England", "Spain"])
-
get_standings
- 複数のリーグとシーズンの順位表を取得します
- チームで絞り込めます
- 例:
get_standings(league_id=[39, 140], season=[2022, 2023])
-
get_league_info
- 指定したサッカーリーグの情報を取得します
- 例:
get_league_info(league_name="Champions League")
-
get_league_fixtures
- 指定したリーグとシーズンのすべての試合日程を取得します
- 例:
get_league_fixtures(league_id=39, season=2023)
-
get_league_schedule_by_date
- 指定した日付のリーグのスケジュールを取得します
- 例:
get_league_schedule_by_date(league_name="Premier League", date=["2024-03-08", "2024-03-09"], season="2023")
選手データ
-
get_player_id
- 名前が一致する選手の選手 ID と情報を取得します
- 例:
get_player_id(player_name="Messi")
-
get_player_profile
- 姓から選手のプロフィールを取得します
- 例:
get_player_profile(player_name="Messi")
-
get_player_statistics
- シーズンとリーグ名を指定して、選手の詳細な統計情報を取得します
- 例:
get_player_statistics(player_id=154, seasons=[2022, 2023], league_name="La Liga")
-
get_player_statistics_2
- シーズンとリーグ ID を指定して、選手の詳細な統計情報を取得します
- 例:
get_player_statistics_2(player_id=154, seasons=[2022, 2023], league_id=140)
チームデータ
-
get_team_fixtures
- チームの過去または今後の試合日程を返します
- 例:
get_team_fixtures(team_name="Manchester United", type="past", limit=3)
-
get_team_fixtures_by_date_range
- 指定した期間内のチームの試合日程を取得します
- 例:
get_team_fixtures_by_date_range(team_name="Liverpool", from_date="2023-09-01", to_date="2023-09-30", season="2023")
-
get_team_info
- 指定したチームの基本情報を取得します
- 例:
get_team_info(team_name="Real Madrid")
試合データ
-
get_fixture_statistics
- 特定の試合の詳細な統計情報を取得します
- 例:
get_fixture_statistics(fixture_id=867946)
-
get_fixture_events
- 試合中に発生したすべてのイベント(ゴール、カード、交代)を取得します
- 例:
get_fixture_events(fixture_id=867946)
-
get_multiple_fixtures_stats
- 複数の試合の統計情報をまとめて取得します
- 例:
get_multiple_fixtures_stats(fixture_ids=[867946, 867947, 867948])
ライブ試合データ
-
get_live_match_for_team
- チームが現在ライブで試合をしているか確認します
- 例:
get_live_match_for_team(team_name="Chelsea")
-
get_live_stats_for_team
- 試合中のチームのライブ統計を取得します
- 例:
get_live_stats_for_team(team_name="Liverpool")
-
get_live_match_timeline
- チームのライブ試合におけるイベントのリアルタイムなタイムラインを取得します
- 例:
get_live_match_timeline(team_name="Manchester City")
使用方法
サーバーは Fast MCP フレームワークを使用して実装されており、スタンドアロンサービスとして実行できます。
# Start the server
python soccer_server.py
# or
mcp run soccer-server.py
設定
- より信頼性の高い動作のため、サーバーは30秒のタイムアウトで実行されます
- 正常なシャットダウンのためのシグナルハンドラーが実装されています(Ctrl+C)
Claude Desktop での使用方法
オプション 1:Docker を使用する(推奨)
- このリポジトリをクローンします
git clone https://github.com/obinopaul/soccer-mcp-server.git
cd soccer-mcp-server
- 依存関係をインストールします
pip install -r requirements.txt
- Docker イメージをビルドします
docker build -t soccer_server .
- Docker コンテナを実行します(API キーが環境変数として渡されていることを確認してください)
docker run -d -p 5000:5000 -e RAPID_API_KEY_FOOTBALL=your_api_key_here --name soccer_server soccer_server
- これを
claude_desktop_config.jsonに追加します:
{
"mcpServers": {
"soccer_server": {
"command": "docker",
"args": [
"exec",
"-i",
"soccer_server",
"python",
"soccer_server.py"
],
"env": {
"RAPID_API_KEY_FOOTBALL": "your_api_key_here"
}
}
}
}
オプション 2:Python を直接実行する
- このリポジトリをクローンします
git clone https://github.com/obinopaul/soccer-mcp-server.git
cd soccer-mcp-server
- 依存関係をインストールします
pip install -r requirements.txt
- API キーの環境変数を設定します
export RAPID_API_KEY_FOOTBALL=your_api_key_here
- Python のパスを必要に応じて調整し、これを
claude_desktop_config.jsonに追加します:
{
"mcpServers": {
"soccer_server": {
"command": "/path/to/your/python",
"args": [
"/path/to/soccer_server.py"
],
"env": {
"RAPID_API_KEY_FOOTBALL": "your_api_key_here"
}
}
}
}
設定を追加したら、Claude Desktop を再起動してサッカーサーバーを読み込みます。その後、Claude との会話でサッカーデータのすべてのツールを使用できるようになります。
技術的な詳細
サーバーは以下を基盤として構築されています:
- RapidAPI 経由の API-Football
- API インターフェースとしての MCP
- 入力検証のための Pydantic
- API 通信のための Requests
ライセンス
この MCP サーバーは MIT License の下で利用できます。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。
