mcpField
C
Cricket Mcp Server

Cricket Mcp Server

ローカル
github.com/tarun7rゲーム・エンタメ1464 週間前に更新

Cricket Mcp Server について

Cricbuzz から板球データを取得する MCP サーバーです。試合、選手、ニュースを調べる MCP クライアント向けに、ライブスコア、ランキング、スコアカード、逐球解説などを提供します。

主な機能

  1. 01選手成績と ICC ランキングの取得
  2. 02進行中の試合の取得
  3. 03日程と板球ニュースの確認
  4. 04スコアカードとライブ解説の照会
  5. 05板球関連のウェブ検索

活用シーン

  1. 01形式別の選手の打撃・投球記録を確認
  2. 02ライブスコアと試合解説を追跡
  3. 03今後の試合日程やニュースを検索

MCP 対応

stdio 経由で、選手成績、ライブ試合、日程、ニュース、ランキング、スコアカード、解説、ウェブ検索のツールを MCP クライアントに公開します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Cricket MCP Server

Cricbuzz の包括的なクリケットデータを提供する Model Context Protocol(MCP)サーバーです。このサーバーは、リアルタイムのクリケット統計、選手情報、試合日程、ニュースを提供します。

機能

  • 選手統計:すべての形式(Test、ODI、T20)にわたる打撃および投球記録など、クリケット選手の詳細な統計を取得します
  • ライブ試合:現在進行中のクリケットの試合を取得します
  • 試合日程:今後のクリケットの試合日程を取得します
  • クリケットニュース:最新のクリケットニュースと最新情報を取得します
  • ICC ランキング:Test、ODI、T20 形式の打撃、投球、オールラウンダー、チームの公式 ICC ランキングを取得します
  • 試合スコアカード:打撃と投球の統計を含む詳細な試合分析を取得します
  • ライブコメンタリー:指定した試合 URL の、直近の一球ごとの更新情報を取得します
  • ウェブ検索:クリケット関連トピックについて、タイトルと抜粋付きでインターネットを検索します

インストール

  1. このリポジトリをクローンまたはダウンロードします
  2. 必要な依存関係をインストールします:
pip install -r requirements.txt

デモ:Gradio Web UI

Gradio と Gemini を利用した会話型ウェブインターフェースで、Cricket MCP Server を操作できます。

1. Gemini API キーを設定する

会話型エージェントを使用するには、Google Gemini API キーが必要です。環境変数として設定します:

export GOOGLE_API_KEY="your-gemini-api-key"
2. Gradio デモを実行する
python3 cricket_gradio.py

これにより、ブラウザーでウェブ UI が起動し、クリケットのアシスタントとチャットして、統計、ライブ試合、ニュースなどについて質問できます。

**ヒント:**チャット UI は会話の記憶とリッチな応答に対応しています。

デモのスクリーンショット

使用方法

MCP サーバーとして実行する

このサーバーは MCP クライアントと統合できます。設定方法は次のとおりです:


    {
        "cricket": {
            "command": "python3",
            "args": ["cricket_server.py"],
            "transport": "stdio",
        }
    }

より柔軟に設定するには、環境変数を使って python 実行ファイルとサーバースクリプトのパスを定義できます。

単独で実行する

テスト目的で、サーバーを直接実行できます:

python3 cricket_server.py

利用可能なツール

1. get_player_stats

クリケット選手の包括的な統計を取得します。

パラメーター:

  • player_name (str):クリケット選手の名前
  • match_format (str, optional):特定の形式("Test"、"ODI"、"T20")。指定しない場合は、すべての形式の情報を返します。

戻り値:

  • 選手の基本情報(名前、国、役割、画像)
  • 打撃と投球の ICC ランキング
  • 詳細な打撃統計
  • 詳細な投球統計

例:

# Get all stats for a player
stats = get_player_stats("Virat Kohli")

# Get only T20 stats
t20_stats = get_player_stats("Virat Kohli", "T20")
2. get_live_matches

現在ライブ中のクリケットの試合を取得します。

戻り値: チームや現在の状況を含む、ライブ試合情報のリストです。

3. get_cricket_schedule

今後のクリケットの試合日程を取得します。

戻り値: 日付と詳細情報を含む、今後の国際クリケット試合のリストです。

4. get_cricket_news

最新のクリケットニュースを取得します。

戻り値: 見出し、説明、タイムスタンプ、カテゴリーを含む、クリケットニュース記事のリストです。

5. get_icc_rankings

各種カテゴリーの公式 ICC クリケットランキングを取得します。

パラメーター:

  • category (str):ランキングのカテゴリー。次のいずれかを指定します:"batting"、"bowling"、"all-rounder"、"teams"。

戻り値: Test、ODI、T20 形式のランキングを含む辞書です。各形式には、順位、名前、国、評価を含む選手またはチームのリストが含まれます。

例:

# Get batting rankings
batting_rankings = get_icc_rankings("batting")

# Get bowling rankings
bowling_rankings = get_icc_rankings("bowling")

# Get team rankings
team_rankings = get_icc_rankings("teams")
6. get_match_details

指定したクリケットの試合の詳細なスコアカードを取得します。

パラメーター:

  • match_url (str):Cricbuzz 上の試合の URL(get_live_matches から取得できます)。

戻り値: 試合タイトル、結果、各イニングの打撃と投球の統計を含む詳細なスコアカードなど、試合の詳細を含む辞書です。

7. get_live_commentary

指定したクリケットの試合の直近のライブコメンタリーを取得します。

パラメーター:

  • match_url (str):Cricbuzz の試合ページの URL(試合ページ全般、またはコメンタリータブへの直接リンク)
  • limit (int, optional):返す直近の項目の最大数(デフォルトは 20)

戻り値: title、commentary_url、events(コメンタリー行のリスト)を含む辞書です。

例:

commentary = get_live_commentary("https://www.cricbuzz.com/live-cricket-scorecard/12345")
8. web_search

ウェブを検索し、タイトルとスニペットを含む結果を返します。

パラメーター:

  • query (str): 検索クエリ
  • num_results (int, optional): 結果の件数(デフォルトは5)
  • site_filter (str, optional): cricbuzz.com のようなドメインに絞り込みます

戻り値: 結果のリスト:{ "title": str, "url": str, "snippet": str }。

9. search_live_commentary

クリケットの試合のライブ解説や最新情報をウェブで検索します。

パラメーター:

  • match_description (str, optional): 試合の詳細な説明(例:「Zimbabwe vs New Zealand 2nd Test」)
  • team1 (str, optional): 1つ目のチーム名
  • team2 (str, optional): 2つ目のチーム名

戻り値: クリケットニュースサイトからライブ解説や試合の最新情報を検索した結果のリストです。

例:

# Search by match description
results = search_live_commentary(match_description="Zimbabwe vs New Zealand 2nd Test")

# Search by team names
results = search_live_commentary(team1="Zimbabwe", team2="New Zealand")

データソース

このサーバーはCricbuzz.comからデータをスクレイピングし、選手プロフィールの検索にはGoogle Searchを使用します。ウェブサイトの利用規約を遵守し、責任を持ってご利用ください。

依存関係

  • fastmcp: MCP サーバーフレームワーク
  • requests: ウェブスクレイピング用HTTPライブラリ
  • beautifulsoup4: HTML解析ライブラリ
  • lxml: XML/HTMLパーサー
  • googlesearch-python: Google検索APIラッパー

設定

サーバーはデフォルトでstdioトランスポートを使用します。基本的な使用に追加の設定は必要ありません。

エラー処理

サーバーには、以下に対する包括的なエラー処理が含まれています。

  • ネットワーク接続の問題
  • 無効な選手名
  • Cricbuzzにデータがない場合
  • 検索の失敗

MCP ディレクトリバッジ

サーバーが登録済みで安全であることを示すため、このバッジをREADMEに追加してください。

README の画像

ライセンス

このプロジェクトはMITライセンスの下でライセンスされています。詳細はLICENSEファイルをご覧ください。

貢献

問題の報告や機能改善のリクエストをぜひお寄せください。

免責事項

このツールは公開ウェブサイトからデータをスクレイピングします。作者は、不正な使用やウェブサイトの利用規約への違反について責任を負いません。責任を持って使用し、適用される利用規約を遵守してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。