Skip to main content
Glama

⚽ FPL MCP — Fantasy Premier League 用 Model Context Protocol サーバー

Python 3.11+ MCP Standard License: MIT Built with uv

Fantasy Premier League (FPL) 向けの非同期 Model Context Protocol (MCP) サーバーです。AI コーディングアシスタントやエージェントフレームワーク(Antigravity、Claude Desktop、Cursor、Custom Agents)に、33 の専用ツールを提供し、試合日程の分析、ディファレンシャルの発掘、スカッド管理、ライブスコア追跡、価格変動の監視、移籍やキャプテンシー判断の最適化を支援します。


🌟 主な特徴

  • 🚀 33 の専門ツール: 公式 FPL エンドポイント(Bootstrap、Fixtures、FDR、Squad、History、Chips、Live Gameweek Scores、Mini-Leagues、Set-Piece Takers、Differentials、Price Movers)を完全カバー。

  • 🔒 安全で読み取り専用: リスクのある自動移籍を行わず、深い分析と AI による推奨に重点を置いています。

  • ⚡ インメモリ TTL キャッシュ: エンドポイントごとのインテリジェントなキャッシュにより、FPL サーバーからのレート制限を防ぎつつ、ライブゲームウィークスコアは常に最新に保ちます。

  • 🛡️ 公開・非公開の両対応: チーム ID だけで公開データをすぐに利用可能。プライベートなスカッドアクセスにはセッション認証 / Cookie に対応。

  • 🔌 標準の stdio トランスポート: MCP 準拠の任意のクライアントにプラグアンドプレイで接続可能。


Related MCP server: MCP Eleven

🏗️ アーキテクチャ

fpl-mcp/
├── src/fpl_mcp/
│   ├── server.py          # MCP Server entrypoint (stdio transport)
│   ├── client.py          # Async FPL HTTP client with TTL caching
│   ├── auth.py            # Session cookie & credential manager
│   ├── cache.py           # In-memory thread-safe TTL cache
│   ├── constants.py       # API endpoints, TTLs, positions & chip maps
│   └── tools/
│       ├── registry.py    # Aggregator & dynamic tool dispatcher
│       ├── bootstrap.py   # Players, teams, and season status
│       ├── fixtures.py    # Fixtures schedule & FDR matrix
│       ├── squad.py       # Team picks, history, and manager info
│       ├── players.py     # Deep player statistics (xG, xA, ICT, PPG)
│       ├── transfers.py   # Transfer history, bank, and AI transfer scout
│       ├── chips.py       # Chip tracker & Double/Blank GW strategy engine
│       ├── live.py        # Real-time provisional GW scores & bonus points
│       ├── leagues.py     # Classic & Head-to-Head mini-league tables
│       ├── news.py        # Injury reports, bans, and set-piece takers
│       ├── picks.py       # Algorithmically ranked captain picks & differentials
│       └── prices.py      # Predicted price risers/fallers & confirmed changes
├── pyproject.toml
└── README.md

🚀 クイックスタート

1. 前提条件

  • Python 3.11+

  • uv(推奨)または pip

2. インストール

# Clone the repository
git clone https://github.com/dexhamter/fpl-mcp.git
cd fpl-mcp

# Install dependencies into virtual environment
uv sync

3. 設定

サンプル環境ファイルをコピーします:

cp .env.example .env

.env をチーム情報で編集します:

# Your FPL Team ID (found in the URL: https://fantasy.premierleague.com/entry/{ID}/event/1)
FPL_TEAM_ID=1234567

# Optional: FPL login credentials or browser session cookie for private team data
FPL_EMAIL=your@email.com
FPL_PASSWORD=your_password
# FPL_COOKIE=pl_profile=...

⚙️ MCP クライアントへの接続

🤖 Antigravity / Gemini CLI

~/.gemini/config/mcp_config.json にサーバーを追加します:

{
  "mcpServers": {
    "fpl": {
      "command": "C:/Users/your_user/Documents/fpl/.venv/Scripts/python.exe",
      "args": ["-m", "fpl_mcp.server"],
      "env": {
        "PYTHONPATH": "C:/Users/your_user/Documents/fpl/src"
      }
    }
  }
}

🟣 Claude Desktop

claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "fpl": {
      "command": "uv",
      "args": [
        "--directory",
        "/path/to/fpl-mcp",
        "run",
        "fpl-mcp"
      ]
    }
  }
}

💻 Cursor / Windsurf

Settings -> Features -> MCP Servers で:

  • Type: command

  • Command: uv --directory /path/to/fpl-mcp run fpl-mcp


🛠️ ツールカタログ(33 ツール)

1. 一般・Bootstrap データ

ツール

引数

説明

get_all_players

positionteammax_pricemin_form

フィルタリングと並べ替えで全アクティブプレイヤーを照会

search_player

query(必須)

部分一致または完全一致の名前でプレイヤーを検索

get_all_teams

なし

強度評価付きの全 20 プレミアリーグチームを取得

get_game_settings

なし

ゲームウィークの締め切り、平均スコア、トップマネージャー

2. フィクスチャと難易度(FDR)

ツール

引数

説明

get_fixtures

gameweek

全試合または特定ゲームウィークの試合スケジュール

get_team_fixtures

team_name(必須)、next_n

FDR 評価付きのチームの今後のスケジュール

get_fdr_table

next_n

全チームにわたる比較 FDR グリッド

3. スカッドとマネージャー概要

ツール

引数

説明

get_my_squad

なし

現在の 15 人プレイヤースカッド、スターティングメンバー、ベンチ、キャプテンシー

get_entry_info

team_id

総合順位、合計ポイント、銀行残高、チーム価値

get_gw_picks

gameweek(必須)、team_id

任意の完了済みゲームウィークのスカッドラインナップ

get_season_history

team_id

ゲームウィークごとの順位とポイント推移

4. プレイヤー分析

ツール

引数

説明

get_player_stats

player_idplayer_name

xG、xA、ICT 指数、ボーナスポイント、出場時間、フォーム

get_player_history

player_idplayer_name

プレイヤーのゲームウィークごとの詳細な試合ログ

get_top_performers

sort_bypositionmax_pricelimit

ポイント、フォーム、PPG、または ICT によるランキングリーダーボード

5. 移籍と予算

ツール

引数

説明

get_transfer_history

team_id

購入/売却コスト付きのシーズン全体の移籍ログ

get_bank_balance

なし

利用可能な銀行内資金、フリー移籍、チーム価値

get_transfer_suggestions

positionmax_pricenext_n_gws

フォームと FDR で移籍をスカウトする複合アルゴリズム

6. チップス戦略

ツール

引数

説明

get_chip_status

なし

ワイルドカード、フリーヒット、ベンチブースト、トリプルキャプテンのトラッカー

get_chip_advice

next_n

ダブル/ブランクゲームウィークの検出と最適なチップタイミング

7. ライブゲームウィークスコア

ツール

引数

説明

get_live_gw_scores

gameweeksort_bylimit

リアルタイムの暫定プレイヤーポイント、ゴール、アシスト

get_my_live_score

gameweek

アクティブなキャプテン倍率付きのスカッドのリアルタイム合計

8. ミニリーグと順位表

ツール

引数

説明

get_my_leagues

なし

チームのすべてのクラシックおよびヘッドトゥヘッドミニリーグ

get_classic_league_standings

league_id(必須)、page

順位とイベントスコア付きの完全なリーダーボード表

get_h2h_league_standings

league_id(必須)、page

ヘッドトゥヘッドの記録(勝敗/引き分け、マッチポイント)

9. チームニュースとセットピース

ツール

引数

説明

get_player_news

status

怪我、出場停止、または疑わしい状態のプレイヤーをフィルタリング

get_set_piece_takers

team_name

指定されたペナルティ、フリーキック、コーナーキッカー

check_my_squad_news

なし

15 人のプレイヤーにわたるステータスアラート付きの健康チェック

10. キャプテンシーとディファレンシャル

ツール

引数

説明

get_captain_suggestions

from_my_squadgameweektop_n

多要素加重キャプテンスコア(フォーム、ICT、FDR、ホーム)

get_differentials

max_ownershippositionmax_price

高潜在性・低所有率のピック(デフォルト 15% 未満)

get_ownership_stats

positionsort_bylimit

所有率、移籍の勢い、純変動

11. 価格変動

ツール

引数

説明

get_price_risers

positionlimit

純流入移籍に基づく差し迫った価格上昇者

get_price_fallers

positionlimit

純流出移籍に基づく差し迫った価格下落者

get_price_changes

directionsince

今ゲームウィークまたはシーズンで確定した価格変更


💡 アシスタントプロンプトの例

エージェントに設定すると、次のような自然言語の質問ができます:

  • 「ゲームウィーク 1 のキャプテンは誰にすべき?フィクスチャと期待ゴール関与に基づいて最良の選択肢を比較して。」

  • 「締め切り前にスカッドに怪我の懸念がないか確認して。」

  • 「銀行に £0.5m あり、£7.5m 未満のミッドフィルダーを今後のフィクスチャが楽な選手に交代したい。誰を提案する?」

  • 「所有率 10% 未満のトップ 5 のディファレンシャルフォワードを見せて。」

  • 「アーセナルとリバプールの今シーズンのペナルティ担当は誰?」

  • 「ダブルとブランクゲームウィークの戦略は?ベンチブーストはいつ使うべき?」


⏱️ キャッシュポリシー

低遅延を維持し、FPL サーバーのエチケットに従うため、データはインメモリでキャッシュされます:

エンドポイントタイプ

デフォルト TTL

ライブゲームウィークスコア(live.py

60 秒

スカッドとエントリー情報(squad.py

120〜300 秒

Bootstrap とプレイヤースタッツ(bootstrap.pyplayers.py

300 秒(5 分)

フィクスチャとスケジュール(fixtures.py

600 秒(10 分)


📜 ライセンス

このプロジェクトは MIT ライセンス の下でライセンスされています。


⚽ 免責事項

このツールはプレミアリーグまたはファンタジープレミアリーグと公式に提携しておらず、承認も受けていません。すべてのデータは公開 FPL API エンドポイントから取得されます。

A
license - permissive license
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    A
    maintenance
    A Model Context Protocol server that provides access to Fantasy Premier League data, allowing users to compare players, find team information, view gameweek data, and get FPL-related advice through Claude for Desktop and other MCP-compatible clients.
    23
    74
    MIT
  • F
    license
    Not graded
    quality
    D
    maintenance
    An open-source MCP server that turns any AI assistant into a football data analytics and scouting platform, enabling natural language queries over 40+ stats, 20+ leagues, and 10,000+ players.
    1
  • F
    license
    Not graded
    quality
    D
    maintenance
    MCP server for the Fantasy Premier League API, enabling querying of players, teams, fixtures, and your FPL team through any MCP-compatible client.
  • A
    license
    A
    quality
    C
    maintenance
    An MCP server for Fantasy Premier League that allows querying gameweek info, player recommendations, squad management, and executing transfers via FPL's public API with optional cookie authentication.
    4
    26
    1
    ISC

View all related MCP servers

Related MCP Connectors

  • Driflyte MCP server which lets AI assistants query topic-specific knowledge from web and GitHub.

  • MCP server for AI dialogue using various LLM models via AceDataCloud

  • An MCP server that integrates with Discord to provide AI-powered features.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/dexhamter/fpl-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server