mcpField
G
golf-data

golf-data

github.com/machina-sportsその他261751 回インストール今日更新
リポジトリ

golf-data について

golf-dataは、sports-skillsのコマンドラインからPGA、LPGA、DP World Tourのデータを取得するスキルです。ツアーを指定して、トーナメント、選手、日程、ニュースを調べられます。

主な機能

  1. 01トーナメントのリーダーボードを取得
  2. 02シーズン日程を確認
  3. 03選手プロフィールとシーズン概要を検索
  4. 04ホールごとのスコアカードを取得
  5. 05ゴルフニュースを閲覧

活用シーン

  1. 01開催中のトーナメントのスコアを確認
  2. 02ツアー日程から日付や会場を調べる
  3. 03選手のシーズン成績を確認
  4. 04終了したラウンドのホール別スコアを確認

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/machina-sports/sports-skills --skill golf-data

インストール後、Claude Code で/golf-dataを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

references/
api-reference.md
majors.md
player-ids.md
scripts/
validate_params.sh

詳細

ゴルフデータ(PGA/LPGA/DP World Tour)

クエリを作成する前に、エンドポイント、選手 ID、スコア形式について references/api-reference.md を確認してください。

セットアップ

初めて使用する前に、CLI が利用可能か確認してください:

which sports-skills || pip install sports-skills

pip install が Python のバージョンエラーで失敗する場合、このパッケージには Python 3.10 以降が必要です。互換性のある Python を探してください:

python3 --version  # check version
# If < 3.10, try: python3.12 -m pip install sports-skills
# On macOS with Homebrew: /opt/homebrew/bin/python3.12 -m pip install sports-skills

API キーは不要です。

クイックスタート

Python のインポートパスの問題を避けるため、CLI の使用をおすすめします:

sports-skills golf get_leaderboard --tour=pga
sports-skills golf get_schedule --tour=pga --year=2026
sports-skills golf get_news --tour=pga

重要:クエリを実行する前に

重要:データエンドポイントを呼び出す前に、以下を確認してください:

  • tour パラメーターが指定されていること(pga、lpga、または eur)。デフォルトのツアーはありません。
  • 選手 ID は get_leaderboard の結果または ESPN のゴルフ URL から取得すること。推測してはいけません。

重要:ゴルフはチームスポーツではありません

  • 試合ではなくトーナメント:各イベントは複数日にわたるトーナメントです(通常は木曜から日曜までの 4 ラウンド)。
  • 個人競技のアスリート:リーダーボードには 2 チームではなく、72~147 人の個人ゴルファーが掲載されます。
  • パーに対するスコア:スコアは「-17」、「E」(イーブン)、「+2」のような文字列で、ポイントの合計ではありません。
  • 週に 1 イベント:チームスポーツとは異なり、各ツアーでは週に 1 つのトーナメントが開催されます。
  • 順位表エンドポイントはありません:FedEx Cup の順位はこの API では取得できません。

tour パラメーター

ほとんどのコマンドでは、--tour=pga、--tour=lpga、または --tour=eur が必要です:

  • PGA:PGA Tour(男子プロゴルフ)
  • LPGA:LPGA Tour(女子プロゴルフ)
  • EUR:DP World Tour(旧 European Tour)

ユーザーが指定しない場合は、pga をデフォルトとして使用してください。「女子ゴルフ」または「LPGA」と言った場合は、lpga を使用してください。European Tour または DP World Tour に言及した場合は、eur を使用してください。

コマンド

コマンド説明
get_leaderboard全ゴルファーのスコアを含むトーナメントのリーダーボード(開催中の大会、または event_id/date を指定)
get_scheduleシーズン全体のトーナメントスケジュール
get_player_info個々のゴルファーのプロフィール
get_player_overviewシーズン成績、ランキング、最近の結果を含む詳細な概要
get_scorecardゴルファーのホールごとのスコアカード(開催中の大会、または event_id/date を指定)
get_newsゴルフニュース記事

すべてのパラメーターと戻り値の形式については、references/api-reference.md を参照してください。

例

例 1:現在のリーダーボード ユーザー:「今の PGA のリーダーボードはどうなっていますか?」 実行内容:

  1. get_leaderboard(tour="pga") を呼び出す 結果:開催中のトーナメントのリーダーボード。順位順に並び、各ゴルファーのスコアとラウンドごとの内訳が含まれます

例 2:シーズンスケジュール ユーザー:「2026 年の LPGA スケジュールを見せてください」 実行内容:

  1. get_schedule(tour="lpga", year=2026) を呼び出す 結果:大会名、日付、会場を含む LPGA のトーナメントカレンダー全体

例 3:ゴルファーのプロフィール ユーザー:「スコッティ・シェフラーについて教えてください」 実行内容:

  1. get_player_info(player_id="9478", tour="pga") を呼び出す 結果:年齢、国籍、身長・体重、プロ転向年を含むシェフラーのプロフィール

例 4:今後のメジャー大会 ユーザー:「今年のマスターズはいつですか?」 実行内容:

  1. currentDate から年を導き出す
  2. get_schedule(tour="pga", year=<derived_year>) を呼び出す
  3. 検索結果から「Masters Tournament」を探す 結果:マスターズの日程、コース(オーガスタ・ナショナル)、トーナメント ID

例 5:選手のスコアカード ユーザー:「スコッティ・シェフラーのスコアカードを見せてください」 実行内容:

  1. get_scorecard(tour="pga", player_id="9478") を呼び出す 結果:完了した各ラウンドのホールごとのスコア。打数とパーとの差が含まれます

例 6:選手のシーズン成績 ユーザー:「今シーズンのローリー・マキロイの調子はどうですか?」 実行内容:

  1. get_player_overview(player_id="3470", tour="pga") を呼び出す 結果:シーズン成績(平均スコア、賞金、優勝回数、トップ 10 入り回数)、世界ランキング、最近の結果

存在しないコマンド — 絶対に呼び出さないでください

  • get_tournament_results — 存在しません。過去のトーナメントでは、get_schedule から取得した event_id を指定して get_leaderboard を使用してください。
  • get_rankings — 存在しません。FedEx Cup/世界ランキングはこの API では利用できません。個人のランキングには get_player_overview を使用してください。
  • get_odds / get_betting_odds — 利用できません。予測市場のオッズには、polymarket または kalshi のスキルを使用してください。
  • search_player — 存在しません。現在の出場選手の ID を調べるには、get_leaderboard を使用してください。

上記の「Commands」テーブルに記載されていないコマンドは存在しません。

エラー処理

コマンドが失敗しても、生のエラーをユーザーに表示しないでください。代わりに、次の対応をしてください。

  1. 開催中のトーナメントがない場合は、その旨を伝え、スケジュールの確認を提案します
  2. 選手 ID が間違っている場合は、現在の選手 ID を調べるために get_leaderboard を使用するよう提案します
  3. 代替手段をすべて試した後に限り、わかりやすいメッセージで失敗を伝えます

トラブルシューティング

エラー:sports-skills コマンドが見つかりません
原因:パッケージがインストールされていません
解決策:pip install sports-skills を実行します

エラー:リーダーボードに開催中のトーナメントがありません
原因:ゴルフトーナメントは木曜日から日曜日に開催されるため、イベントの合間はリーダーボードに開催中のトーナメントが表示されない場合があります
解決策:get_schedule(tour="pga") を呼び出して、次回の開催予定イベントを確認します

エラー:ラウンドデータが限られており、スコアが空です
原因:トーナメント開始前はラウンドスコアが空になります。トーナメント開催中は、完了したラウンドのスコアのみ表示されます
解決策:get_leaderboard でトーナメントのステータスと現在のラウンドを確認し、ラウンドが完了するまで待ちます

エラー:ID で選手が見つかりません
原因:選手 ID が正しくないか、その選手が現在のトーナメントの出場選手に含まれていません
解決策:get_leaderboard の結果から選手 ID を取得するか、ESPN のゴルフ URL(espn.com/golf/player/_/id/<id>/player-name)を参照します

コメント