AI-powered Fantasy Premier League MCP server — captain picks, transfer suggestions, player comparison, chip strategy, and more
Project description
FPL Intelligence — MCP Server
AI-powered Fantasy Premier League assistant for Claude Desktop. Get personalized captain picks, transfer suggestions, differentials, fixture analysis, price predictions, and live points — all from real FPL data.
Quick Start
1. Install:
pip install fpl-intelligence
2. Add to Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"fpl": {
"command": "fpl-intelligence"
}
}
}
3. Restart Claude Desktop and ask:
"Analyze FPL team YOUR_TEAM_ID and give me your full recommendation."
That's it. Bank balance, free transfers, and chips are all auto-detected — just provide your team ID.
Install from Source
git clone https://github.com/dohyung1/x402-fpl-api.git
cd x402-fpl-api
uv sync
{
"mcpServers": {
"fpl": {
"command": "uv",
"args": ["run", "--directory", "/path/to/x402-fpl-api", "mcp_server.py"]
}
}
}
Find Your FPL Team ID
Go to the FPL website, click "Points", and look at the URL:
https://fantasy.premierleague.com/entry/YOUR_TEAM_ID/event/<gw>
What Can It Do?
| Tool | What it does |
|---|---|
fpl_manager_hub |
Start here. Full personalized analysis — captain, transfers, differentials, fixtures, price risks |
captain_pick |
Top 5 captain recommendations scored by xG, form, fixtures, and ICT index |
transfer_suggestions |
Transfer in/out recommendations based on your squad and budget |
player_comparison |
Head-to-head compare 2-4 players (e.g. "Salah vs Palmer vs Saka") |
is_hit_worth_it |
Should you take a -4 hit? Projects points over N gameweeks to decide |
chip_strategy |
When to use your remaining chips — optimal GW for each based on fixtures |
differential_finder |
Underowned players outperforming their ownership % |
fixture_outlook |
Teams ranked by upcoming fixture difficulty + best players to target |
price_predictions |
Players likely to rise or fall in price tonight |
live_points |
Live score, projected bonus, and auto-sub scenarios |
rival_tracker |
Mini-league rival analysis — compare squads, find differentials, predict rival moves, get strategies to overtake |
league_analyzer |
NEW. Who's going to win your league? Win probabilities based on form, squad quality, chips, momentum |
squad_scout |
Deep scout using FPL's hidden data — expected points, blank GW warnings, set piece duties, suspension risks |
Example Prompts
Try these in Claude Desktop:
- "Analyze FPL team 5456980 and give me your full recommendation"
- "Who should I captain this gameweek?"
- "Compare Salah, Palmer, and Saka"
- "Is it worth taking a -4 hit to bring in Haaland?"
- "When should I use my bench boost?"
- "Find me some differentials under 5% ownership"
- "Which teams have the easiest fixtures for the next 6 weeks?"
- "Analyze my mini-league 1189955 for team 5456980 — how do I beat my rivals?"
- "Who's going to win mini-league 1189955?"
How It Works
FPL Intelligence connects directly to the FPL API — the same free, public data source used by the FPL website. All data is real-time. The server runs locally on your machine and communicates with Claude Desktop via the Model Context Protocol (MCP).
No API keys. No accounts. No data leaves your machine except FPL API calls.
Troubleshooting
"FPL API calls are blocked" / 403 errors
The most common issue. The FPL API blocks requests that don't look like they come from a browser.
1. Test if the API is reachable from your machine:
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/
If this returns 200, the API is reachable and the issue is likely Claude Desktop's sandbox (see below). If it returns 403, your network may be blocking the request.
2. Claude Desktop network permissions:
Claude Desktop runs MCP servers in a sandbox. The first time the server calls the FPL API, Claude Desktop may prompt you to approve network access to fantasy.premierleague.com. If you dismissed this prompt, the domain stays blocked.
- Restart Claude Desktop and watch for the network approval prompt
- Check Claude Desktop logs:
~/Library/Logs/Claude/(macOS)
3. Corporate network / VPN / firewall:
Some corporate networks block *.premierleague.com. Try:
- Disconnecting from VPN
- Switching to a personal network
- Asking your IT team to allowlist
fantasy.premierleague.com
4. FPL API is down or in maintenance:
The FPL API occasionally goes down during gameweek updates (usually around deadline time) or between seasons (June–July). Check if the API responds in your browser: fantasy.premierleague.com/api/bootstrap-static/
Server won't start
command not found: fpl-intelligence
The fpl-intelligence binary isn't on your PATH. Try:
# Find where pip installed it
pip show fpl-intelligence
# Use the full path in claude_desktop_config.json
which fpl-intelligence
Or use pipx for isolated installs:
pipx install fpl-intelligence
Python version error:
FPL Intelligence requires Python 3.12+. Check your version:
python3 --version
"Invalid team_id" errors
Make sure you're using your FPL team ID (a number like 5456980), not your FPL username. Find it by going to the FPL website, clicking Points, and checking the URL:
https://fantasy.premierleague.com/entry/YOUR_TEAM_ID/event/30
Still stuck?
Open an issue with:
- Your OS and Python version
- The error message (from Claude Desktop or terminal)
- Output of the
curltest above
Contributing
See CONTRIBUTING.md for development setup and guidelines.
License
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file fpl_intelligence-0.8.0.tar.gz.
File metadata
- Download URL: fpl_intelligence-0.8.0.tar.gz
- Upload date:
- Size: 231.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
b6426de782f20ea376e5f56acf35d9b7fef64d88f4dff9d0a3f4877d77288bef
|
|
| MD5 |
de5cb1f449c79b67aec8540d3c26a169
|
|
| BLAKE2b-256 |
25c0087e96ad9dbb4a03cb30da7faadcd0e1d6c820648c5bd82f28cad5fd9d7a
|
File details
Details for the file fpl_intelligence-0.8.0-py3-none-any.whl.
File metadata
- Download URL: fpl_intelligence-0.8.0-py3-none-any.whl
- Upload date:
- Size: 63.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3f3222bd0ae9af7f03700d9a8be2f8d4e86b958887d6f0dc8ce17e879623a1a0
|
|
| MD5 |
8696d65b7e813c7b361237e17a8fe401
|
|
| BLAKE2b-256 |
8927ed295939f4b5a09a91531433292510e589549b09a76383cf8a7bee7d4300
|