https://github.com/dohyung1/x402-fpl-api
MCP server that turns Claude into a Fantasy Premier League analyst. 11 tools: captain picks, transfer suggestions, player comparison, hit calculator, chip strategy, differentials, fixtures, price predictions, live points, squad scout. pip install fpl-intelligence
https://github.com/dohyung1/x402-fpl-api
ai ai-agent anthropic claude claude-desktop fantasy-football fantasy-premier-league fpl fpl-api llm mcp mcp-server model-context-protocol premier-league python sports-analytics
Last synced: 2 months ago
JSON representation
MCP server that turns Claude into a Fantasy Premier League analyst. 11 tools: captain picks, transfer suggestions, player comparison, hit calculator, chip strategy, differentials, fixtures, price predictions, live points, squad scout. pip install fpl-intelligence
- Host: GitHub
- URL: https://github.com/dohyung1/x402-fpl-api
- Owner: dohyung1
- License: mit
- Created: 2026-03-16T06:17:28.000Z (3 months ago)
- Default Branch: main
- Last Pushed: 2026-03-23T23:38:29.000Z (2 months ago)
- Last Synced: 2026-04-01T16:43:11.383Z (2 months ago)
- Topics: ai, ai-agent, anthropic, claude, claude-desktop, fantasy-football, fantasy-premier-league, fpl, fpl-api, llm, mcp, mcp-server, model-context-protocol, premier-league, python, sports-analytics
- Language: Python
- Size: 472 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp-servers - dohyung1/x402-fpl-api - Personalized Fantasy Premier League intelligence MCP server. Provides scored captain picks, transfer suggestions, differentials, fixture outlook, price predictions, live points, and a full manager hub that auto-detects bank balance, free transfers, and chips. ([Read more](/details/dohyung1-x402-fpl-api.md)) `Fantasy Sports` `Premier League` `Python` (Sports & Entertainment)
README
# FPL Intelligence — MCP Server
[](https://pypi.org/project/fpl-intelligence/)
[](https://github.com/dohyung1/x402-fpl-api/actions/workflows/ci.yml)
[](https://opensource.org/licenses/MIT)
[](https://www.python.org/downloads/)
[](https://modelcontextprotocol.io)
[](https://pypistats.org/packages/fpl-intelligence)
Turn Claude into your FPL analyst. Captain picks, transfer advice, rival scouting, chip timing, league predictions — powered by real-time FPL data.
[](https://glama.ai/mcp/servers/dohyung1/x402-fpl-api)
## Quick Start
### Step 1 — Install
Requires [Python 3.12+](https://www.python.org/downloads/).
```bash
pip install fpl-intelligence
```
### Step 2 — Connect to Claude Desktop
```bash
fpl-intelligence --setup
```
### Step 3 — Restart Claude Desktop
Quit (**Cmd+Q** on macOS) and reopen. Look for `fpl` under the MCP servers icon (hammer icon).
### Step 4 — Ask Claude anything about FPL
> "Analyze my FPL team **5456980** — who should I captain, who should I transfer in, and when should I use my chips?"
That's it. Bank balance, free transfers, and chips are all auto-detected from your team ID.
### Where's my team ID?
Go to [fantasy.premierleague.com](https://fantasy.premierleague.com) → click **Points** → grab the number from the URL:
```
https://fantasy.premierleague.com/entry/YOUR_TEAM_ID/event/30
```
Your league ID is in the mini-league URL:
```
https://fantasy.premierleague.com/leagues/YOUR_LEAGUE_ID/standings/c
```
## 12 Tools
| Tool | What it does |
|---|---|
| `fpl_manager_hub` | Full personalized analysis — captain, transfers, differentials, fixtures, price risks |
| `captain_pick` | Top 5 captain picks scored by form, xG, fixtures, and ICT index |
| `transfer_suggestions` | Who to bring in and ship out based on your squad and budget |
| `player_comparison` | Head-to-head compare 2-4 players across every metric |
| `is_hit_worth_it` | Should you take a -4? Projects net points over N gameweeks |
| `chip_strategy` | Optimal gameweek for each chip — factors in DGW predictions |
| `differential_finder` | Hidden gems outperforming their ownership |
| `fixture_outlook` | Teams ranked by upcoming fixture difficulty |
| `price_predictions` | Who's rising and falling tonight |
| `live_points` | Live score, projected bonus, auto-sub scenarios |
| `rival_tracker` | Spy on mini-league rivals — differentials, weaknesses, predicted moves |
| `league_analyzer` | Win probabilities for your league — who's the favourite and why |
| `squad_scout` | Deep scout using FPL's hidden data — ep_next, set pieces, suspension risks |
## Example Prompts
```
"Give me the full breakdown on team 5456980 — captain, transfers, everything"
"I have 2 free transfers and 1.5m in the bank. Who should I bring in?"
"Salah vs Palmer vs Saka — who's the best pick for the next 5 gameweeks?"
"I want to bring in Haaland for a -4. Is it worth the hit?"
"I still have my bench boost and triple captain. When should I use them?"
"Find me some differentials under 3% ownership that are actually returning points"
"It's 60 minutes into the games — how's my team doing? Any auto-subs?"
"Show me everything about mini-league 1189955 — who's going to win?"
"How do I beat my rivals in league 1189955? I'm team 5456980"
"Which players are about to drop in price tonight? I need to sell before the deadline"
"Scout my squad — who's nailed, who's at risk of rotation, any suspension danger?"
```
## How It Works
FPL Intelligence connects to the official [FPL API](https://fantasy.premierleague.com/api/bootstrap-static/) — the same free, public data that powers the FPL website. All data is real-time. See the full [FPL API reference on Postman](https://www.postman.com/fplassist/fpl-assist/collection/zqlmv01/fantasy-premier-league-api?sideView=agentMode) for endpoint documentation.
The server runs locally on your machine and talks to Claude Desktop via [MCP](https://modelcontextprotocol.io). No API keys, no accounts, no data leaves your machine except FPL API calls.
### Install from Source
```bash
git clone https://github.com/dohyung1/x402-fpl-api.git
cd x402-fpl-api
uv sync
```
Then use the **full absolute path** to `uv` and the repo in your Claude Desktop config:
```json
{
"mcpServers": {
"fpl": {
"command": "/full/path/to/uv",
"args": ["run", "--directory", "/full/path/to/x402-fpl-api", "mcp_server.py"]
}
}
}
```
> Find your `uv` path with `which uv` (e.g. `/Users/you/.cargo/bin/uv`).
## Troubleshooting
FPL API calls are blocked / 403 errors
The FPL API blocks requests that don't look like they come from a browser.
**Test if the API is reachable:**
```bash
curl -s -o /dev/null -w "%{http_code}" \
-H "User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7)" \
https://fantasy.premierleague.com/api/bootstrap-static/
```
Returns `200`? The API works — the issue is likely Claude Desktop's sandbox (see below). Returns `403`? Your network is blocking it.
**Claude Desktop sandbox:** Claude Desktop may prompt you to approve network access to `fantasy.premierleague.com`. If you dismissed this, restart Claude Desktop and watch for the prompt. Check logs at `~/Library/Logs/Claude/` (macOS).
**VPN / corporate network:** Some networks block `*.premierleague.com`. Try disconnecting from VPN or switching to a personal network.
**FPL API downtime:** The API goes down around deadline time and between seasons (June-July). Test in your browser: [fantasy.premierleague.com/api/bootstrap-static/](https://fantasy.premierleague.com/api/bootstrap-static/)
Server won't start / "Failed to spawn process" / command not found
First try re-running the auto-setup:
```bash
fpl-intelligence --setup
```
If that doesn't work, set it up manually:
**Step 1 — Find the binary:**
```bash
find ~ -name "fpl-intelligence" -type f 2>/dev/null
```
**Step 2 — Use the full path in your config:**
```json
{
"mcpServers": {
"fpl": {
"command": "/full/path/to/fpl-intelligence"
}
}
}
```
**Step 3 — Make sure you're editing the right config file:**
```bash
# macOS — open the file directly
open ~/Library/Application\ Support/Claude/claude_desktop_config.json
# Windows
notepad %APPDATA%\Claude\claude_desktop_config.json
```
**Step 4 — Fully quit and reopen Claude Desktop** (Cmd+Q on macOS, not just close the window).
**Still not working?** Check Claude Desktop's logs for errors:
- **macOS:** `~/Library/Logs/Claude/`
- **Windows:** `%APPDATA%\Claude\logs\`
**Python version error:** Requires Python 3.12+. Check with `python3 --version`.
Invalid team_id errors
Use your FPL team ID (a number like `5456980`), not your username. Find it at [fantasy.premierleague.com](https://fantasy.premierleague.com) → **Points** → check the URL.
Still stuck?
[Open an issue](https://github.com/dohyung1/x402-fpl-api/issues) with your OS, Python version, the error message, and the output of the curl test above.
## Contributing
See [CONTRIBUTING.md](CONTRIBUTING.md) for development setup and guidelines.
## License
[MIT](LICENSE)