fpl-mcp
⚽ FPL MCP — Servidor de Model Context Protocol para Fantasy Premier League
Un servidor asíncrono de Model Context Protocol (MCP) para Fantasy Premier League (FPL). Proporciona a los asistentes de codificación con IA y a los frameworks de agentes (Antigravity, Claude Desktop, Cursor, Custom Agents) 33 herramientas especializadas para analizar partidos, detectar diferenciales, gestionar plantillas, seguir las puntuaciones en vivo, supervisar las fluctuaciones de precios y optimizar los traspasos y las decisiones de capitanía.
🌟 Características principales
🚀 33 herramientas especializadas: Cobertura completa de los endpoints oficiales de FPL (Bootstrap, Fixtures, FDR, Squad, History, Chips, Live Gameweek Scores, Mini-Leagues, Set-Piece Takers, Differentials y Price Movers).
🔒 Seguro y de solo lectura: Se centra en análisis profundos y recomendaciones de IA sin traspasos automáticos arriesgados.
⚡ Caché TTL en memoria: El caché inteligente por endpoint evita la limitación de la tasa de peticiones de los servidores de FPL y mantiene frescas las puntuaciones en vivo de la jornada.
🛡️ Compatibilidad pública y privada: Funciona de inmediato con los datos públicos con solo un ID de equipo. Admite autenticación de sesión / cookies para el acceso privado a la plantilla.
🔌 Transporte stdio estándar: Plug-and-play con cualquier cliente compatible con MCP.
Related MCP server: MCP Eleven
🏗️ Arquitectura
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🚀 Inicio rápido
1. Requisitos previos
Python 3.11+
uv (recomendado) o
pip
2. Instalación
# Clone the repository
git clone https://github.com/dexhamter/fpl-mcp.git
cd fpl-mcp
# Install dependencies into virtual environment
uv sync3. Configuración
Copia el archivo de entorno de ejemplo:
cp .env.example .envEdita .env con la información de tu equipo:
# 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=...⚙️ Conexión con clientes MCP
🤖 Antigravity / Gemini CLI
Añade el servidor a tu ~/.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
Añádelo a tu claude_desktop_config.json:
{
"mcpServers": {
"fpl": {
"command": "uv",
"args": [
"--directory",
"/path/to/fpl-mcp",
"run",
"fpl-mcp"
]
}
}
}💻 Cursor / Windsurf
En Ajustes -> Funciones -> Servidores MCP:
Tipo:
commandComando:
uv --directory /path/to/fpl-mcp run fpl-mcp
🛠️ Catálogo de herramientas (33 herramientas)
1. Datos generales y de Bootstrap
Herramienta | Argumentos | Descripción |
|
| Consulta todos los jugadores activos con filtrado y ordenación |
|
| Busca jugadores por nombre parcial o completo |
| None | Obtén los 20 equipos de la Premier League con sus valoraciones de fuerza |
| None | Fecha límite de la jornada, puntuación media, mejores entrenadores |
2. Calendario y dificultad (FDR)
Herramienta | Argumentos | Descripción |
|
| Calendario de partidos de todas las jornadas o de una específica |
|
| Próximos partidos de un equipo con valoraciones FDR |
|
| Cuadro comparativo de FDR de todos los equipos |
3. Resumen de plantilla y mánager
Herramienta | Argumentos | Descripción |
| None | Plantilla actual de 15 jugadores, titulares, banquillo y capitanía |
|
| Clasificación general, puntos totales, saldo bancario y valor del equipo |
|
| Alineación de la plantilla para cualquier jornada finalizada |
|
| Trayectoria de clasificación y puntos jornada a jornada |
4. Análisis de jugadores
Herramienta | Argumentos | Descripción |
|
| xG, xA, índice ICT, puntos de bonus, minutos, forma |
|
| Registro detallado de los partidos de un jugador jornada a jornada |
|
| Clasificación ordenada por puntos, forma, PPG o ICT |
5. Traspasos y presupuesto
Herramienta | Argumentos | Descripción |
|
| Registro completo de traspasos de la temporada con costes de compra y venta |
| None | Fondos disponibles en el banco, traspasos gratuitos y valor del equipo |
|
| Algoritmo compuesto que evalúa traspasos según forma y FDR |
6. Estrategia de chips
Herramienta | Argumentos | Descripción |
| None | Seguimiento de Wildcards, Free Hit, Bench Boost y Triple Captain |
|
| Detección de jornadas dobles/en blanco (Double/Blank Gameweek) y momento óptimo para usar los chips |
7. Puntuaciones en vivo de la jornada
Herramienta | Argumentos | Descripción |
|
| Puntos provisionales de los jugadores en tiempo real, goles y asistencias |
|
| Total actualizado en tiempo real de tu plantilla con el multiplicador de capitán activo |
8. Miniligas y clasificaciones
Herramienta | Argumentos | Descripción |
| None | Todas las miniligas clásicas y cara a cara (head-to-head) de tu equipo |
|
| Tabla de clasificación completa con posiciones y puntuaciones de la jornada |
|
| Registros cara a cara (W/D/L, puntos de partido) |
9. Noticias del equipo y jugadas a balón parado
Herramienta | Argumentos | Descripción |
|
| Filtra jugadores con lesiones, sanciones o dudas |
|
| Lanzadores designados de penaltis, tiros libres y córners |
| None | Chequeo del estado de tus 15 jugadores con alertas de estado |
10. Capitanía y diferenciales
Herramienta | Argumentos | Descripción |
|
| Puntuación de capitán ponderada por múltiples factores (forma, ICT, FDR, local) |
|
| Elecciones de alto potencial y baja propiedad (<15 % por defecto) |
|
| Porcentaje de propiedad, impulso de traspasos y delta neto |
11. Movimientos de precio
Herramienta | Argumentos | Descripción |
|
| Jugadores que subirán de precio próximamente según los traspasos netos recibidos |
|
| Jugadores que bajarán de precio próximamente según los traspasos netos realizados |
|
| Cambios de precio confirmados en esta jornada o en la temporada |
💡 Ejemplos de preguntas para el asistente
Una vez configurado con tu agente, puedes hacer preguntas en lenguaje natural como:
"¿A quién debería poner de capitán en la jornada 1? Compara mis mejores opciones según el calendario y la participación esperada en goles."
"Revisa mi plantilla por si hay problemas de lesiones antes de la fecha límite."
"Tengo £0.5m en el banco y necesito reemplazar a un centrocampista de menos de £7.5m con un calendario favorable. ¿A quién me sugieres?"
"Muéstrame los 5 delanteros diferenciales más destacados que estén en menos del 10 % de los equipos."
"¿Quién se encarga de los penaltis en el Arsenal y el Liverpool esta temporada?"
"¿Cuál es nuestra estrategia para las jornadas dobles y en blanco (Double y Blank Gameweek)? ¿Cuándo debería plantearme usar mi Bench Boost?"
⏱️ Política de caché
Para mantener una baja latencia y cumplir con la etiqueta de los servidores de FPL, los datos se guardan en caché en memoria:
Tipo de endpoint | TTL por defecto |
Puntuaciones en vivo de la jornada ( | 60 segundos |
Plantilla e información del equipo ( | 120 - 300 segundos |
Bootstrap y estadísticas de jugadores ( | 300 segundos (5 min) |
Partidos y calendario ( | 600 segundos (10 min) |
📜 Licencia
Este proyecto está licenciado bajo la Licencia MIT.
⚽ Descargo de responsabilidad
Esta herramienta no está afiliada oficialmente a la Premier League ni a Fantasy Premier League, ni cuenta con su respaldo. Todos los datos se obtienen de los endpoints públicos de la API de FPL.
This server cannot be installed
Maintenance
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
- AlicenseBqualityAmaintenanceA 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.2374MIT
- FlicenseNot gradedqualityDmaintenanceAn 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
- FlicenseNot gradedqualityDmaintenanceMCP server for the Fantasy Premier League API, enabling querying of players, teams, fixtures, and your FPL team through any MCP-compatible client.
- AlicenseAqualityCmaintenanceAn 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.4261ISC
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.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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