Fantasy Premier League MCP Server

by rishijatia
Verified
MIT License
7
  • Apple

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

Integrations

  • Provides access to Fantasy Premier League data including comprehensive player statistics, team information, gameweek data, fixture difficulty, and tools for comparing players and analyzing performance

  • Leverages Python to access the Fantasy Premier League API, with support for Python 3.10 or higher to run the MCP server

Servidor MCP de la Fantasy Premier League

Un servidor de Protocolo de Contexto de Modelo (MCP) que proporciona acceso a los datos y herramientas de la Fantasy Premier League (FPL). Este servidor permite interactuar con los datos de la FPL en Claude for Desktop y otros clientes compatibles con MCP.

Demostración del servidor MCP de Fantasy Premier League en acción

Plataformas compatibles

  • Escritorio de Claude
  • Cursor
  • Windsurf
  • Otros LLM de escritorio compatibles con MCP

Los dispositivos móviles no son compatibles actualmente.

Características

  • Datos de jugadores enriquecidos : acceda a estadísticas completas de jugadores desde la API de FPL
  • Información del equipo : Obtenga detalles sobre los equipos de la Premier League
  • Datos de la semana de juego : vea información de la semana de juego actual y pasada
  • Búsqueda de jugadores : Encuentra jugadores por nombre o equipo
  • Comparación de jugadores : compara estadísticas detalladas entre dos jugadores

Requisitos

  • Python 3.10 o superior
  • Claude Desktop (para integración de IA)

Instalación

Opción 1: Instalar desde PyPI (recomendado)

pip install fpl-mcp

Opción 1b: Instalar con dependencias de desarrollo

pip install "fpl-mcp[dev]"

Opción 2: Instalar desde GitHub

pip install git+https://github.com/rishijatia/fantasy-pl-mcp.git

Opción 3: Clonar e instalar localmente

git clone https://github.com/rishijatia/fantasy-pl-mcp.git cd fantasy-pl-mcp pip install -e .

Ejecución del servidor

Después de la instalación, tienes varias opciones para ejecutar el servidor:

1. Uso del comando CLI

fpl-mcp

2. Uso del módulo Python

python -m fpl_mcp

3. Uso con Claude Desktop

Configure Claude Desktop para usar el paquete instalado editando su archivo claude_desktop_config.json :

Método 1: Usar el módulo Python directamente (el más confiable)

{ "mcpServers": { "fantasy-pl": { "command": "python", "args": ["-m", "fpl_mcp"] } } }

Método 2: Usar el comando instalado con la ruta completa (si se instala con pip)

{ "mcpServers": { "fantasy-pl": { "command": "/full/path/to/your/venv/bin/fpl-mcp" } } }

Reemplace /full/path/to/your/venv/bin/fpl-mcp con la ruta real del ejecutable. Puede encontrarla ejecutando which fpl-mcp en su terminal después de activar su entorno virtual.

Nota: Usar solo "command": "fpl-mcp" puede generar un error spawn fpl-mcp ENOENT ya que Claude Desktop podría no tener acceso a la ruta de su entorno virtual. Usar la ruta completa o el módulo de Python ayuda a evitar este problema.

Uso

En Claude para escritorio

  1. Iniciar Claude para escritorio
  2. Debería ver las herramientas FPL disponibles a través del ícono del martillo
  3. Consultas de ejemplo:
    • Compara a Mohamed Salah y Erling Haaland en las últimas cinco jornadas.
    • Encuentra a todos los centrocampistas del Arsenal
    • "¿Cuál es el estado actual de la jornada?"
    • "Muéstrame los 5 mejores delanteros por puntos"

Instrucciones de uso del MCP Fantasy-PL

Comandos básicos:

  • Comparar jugadores: "Comparar [Jugador1] y [Jugador2]"
  • Buscar jugadores: "Buscar jugadores de [Equipo]" o "Buscar [Nombre del jugador]"
  • Dificultad del partido: "Mostrar próximos partidos de [Equipo]"
  • Consejo del capitán: "¿A quién debería capitanear entre [Jugador1] y [Jugador2]?"

Funciones avanzadas:

  • Análisis estadístico: "Comparar las estadísticas subyacentes de [Jugador1] y [Jugador2]"
  • Comprobación de forma: "Muéstrame los jugadores en forma en este momento"
  • Selecciones diferenciales: "Sugerir diferenciales con una participación del 10%"
  • Optimización de equipos: "Califica a mi equipo y sugiere fichajes"

Consejos:

  • Sea específico con los nombres de los jugadores para obtener resultados precisos
  • Incluir posiciones al buscar (FWD, MID, DEF, GK)
  • Para obtener el mejor consejo sobre el capitán, pregunte sobre la forma, los partidos y las estadísticas subyacentes.
  • Solicitar comparación de métricas específicas (xG, tiros en el área, etc.

Inspector de Desarrollo del MCP

Para desarrollo y pruebas:

# If you have mcp[cli] installed mcp dev -m fpl_mcp # Or use npx npx @modelcontextprotocol/inspector python -m fpl_mcp

Recursos disponibles

  • fpl://static/players - Todos los datos de los jugadores con estadísticas completas
  • fpl://static/players/{name} - Búsqueda de datos de jugadores por nombre
  • fpl://static/teams - Todos los equipos de la Premier League
  • fpl://static/teams/{name} - Búsqueda de datos del equipo por nombre
  • fpl://gameweeks/current - Datos de la jornada actual
  • fpl://gameweeks/all - Datos de todas las jornadas
  • fpl://fixtures - Todos los partidos de la temporada actual
  • fpl://fixtures/gameweek/{gameweek_id} - Partidos para una jornada específica
  • fpl://fixtures/team/{team_name} - Partidos de un equipo específico
  • fpl://players/{player_name}/fixtures - Próximos partidos para un jugador específico
  • fpl://gameweeks/blank - Información sobre las próximas jornadas de juego en blanco
  • fpl://gameweeks/double - Información sobre las próximas jornadas dobles

Herramientas disponibles

  • get_gameweek_status : obtén información precisa sobre las jornadas actuales, anteriores y próximas
  • analyze_player_fixtures : analiza los próximos partidos de un jugador con índices de dificultad.
  • get_blank_gameweeks - Obtén información sobre las próximas jornadas de juego en blanco
  • get_double_gameweeks - Obtén información sobre las próximas jornadas dobles
  • analyze_players : filtra y analiza a los jugadores de la FPL según múltiples criterios.
  • analyze_fixtures : analiza los próximos partidos de jugadores, equipos o posiciones.
  • compare_players : compara varios jugadores según diversas métricas
  • check_fpl_authentication - Comprueba si la autenticación FPL funciona correctamente
  • get_my_team - Ver su equipo autenticado (requiere autenticación)
  • get_team - Ver cualquier equipo con un ID específico (requiere autenticación)
  • get_manager_info - Obtener detalles del administrador (requiere autenticación)

Plantillas de indicaciones

  • player_analysis_prompt - Crea un mensaje para analizar a un jugador de FPL en profundidad
  • transfer_advice_prompt - Recibe asesoramiento sobre transferencias de jugadores según el presupuesto y la posición
  • team_rating_prompt - Crea un mensaje para calificar y analizar un equipo de FPL
  • differential_players_prompt - Crea un mensaje para encontrar jugadores diferenciales con baja propiedad
  • chip_strategy_prompt - Crea un mensaje para obtener consejos sobre la estrategia de chips

Desarrollo

Añadiendo funciones

Para agregar nuevas funciones:

  1. Agregue controladores de recursos en el archivo apropiado dentro de fpl_mcp/fpl/resources/
  2. Agregue controladores de herramientas en el archivo apropiado dentro de fpl_mcp/fpl/tools/
  3. Actualice el archivo __main__.py para registrar nuevos recursos y herramientas
  4. Pruebe usando el Inspector MCP antes de implementar en Claude for Desktop

Autenticación

Para utilizar funciones que requieren autenticación (como acceder a tu equipo o ligas privadas), debes configurar tus credenciales de FPL:

# Run the credential setup tool fpl-mcp-config setup

Esta herramienta interactiva permitirá:

  1. Solicite su correo electrónico, contraseña e ID de equipo de FPL
  2. Le permite elegir entre almacenar en el archivo config.json o .env
  3. Guarde las credenciales de forma segura en ~/.fpl-mcp/

Puede probar su autenticación con:

fpl-mcp-config test

Alternativamente, puede configurar manualmente la autenticación:

  1. Cree el archivo ~/.fpl-mcp/.env con:
    FPL_EMAIL=your_email@example.com FPL_PASSWORD=your_password FPL_TEAM_ID=your_team_id
  2. O crea ~/.fpl-mcp/config.json :
    { "email": "your_email@example.com", "password": "your_password", "team_id": "your_team_id" }
  3. O bien establecer variables de entorno:
    export FPL_EMAIL=your_email@example.com export FPL_PASSWORD=your_password export FPL_TEAM_ID=your_team_id

Limitaciones

  • La API de FPL no está documentada oficialmente y puede cambiar sin previo aviso.
  • Actualmente solo se admiten operaciones de lectura

Solución de problemas

Problemas comunes

1. Error "spawn fpl-mcp ENOENT" en Claude Desktop

Esto ocurre porque Claude Desktop no puede encontrar el ejecutable fpl-mcp en su RUTA.

Solución: utilice uno de estos enfoques:

  • Utilice la ruta completa al ejecutable en su archivo de configuración
    { "mcpServers": { "fantasy-pl": { "command": "/full/path/to/your/venv/bin/fpl-mcp" } } }
  • Utilice Python para ejecutar el módulo directamente (método preferido)
    { "mcpServers": { "fantasy-pl": { "command": "python", "args": ["-m", "fpl_mcp"] } } }

2. El servidor se desconecta inmediatamente

Si el servidor se inicia pero se desconecta inmediatamente:

  • Consulte los registros en ~/Library/Logs/Claude/mcp*.log (macOS) o %APPDATA%\Claude\logs\mcp*.log (Windows)
  • Asegúrese de que todas las dependencias estén instaladas
  • Intente ejecutar el servidor manualmente con python -m fpl_mcp para ver si hay errores

3. El servidor no se muestra en Claude Desktop

Si el icono del martillo no aparece:

  • Reiniciar Claude Desktop por completo
  • Verifique que su claude_desktop_config.json tenga la sintaxis JSON correcta
  • Asegúrese de que la ruta a Python o al ejecutable sea absoluta, no relativa

Licencia

Este proyecto está licenciado bajo la licencia MIT: consulte el archivo de LICENCIA para obtener más detalles.

Contribuyendo

¡Agradecemos sus contribuciones! No dude en enviar una solicitud de incorporación de cambios.

  1. Bifurcar el repositorio
  2. Crea tu rama de funciones ( git checkout -b feature/amazing-feature )
  3. Confirme sus cambios ( git commit -m 'Add some amazing feature' )
  4. Empujar a la rama ( git push origin feature/amazing-feature )
  5. Abrir una solicitud de extracción

Para obtener más detalles, consulte el archivo CONTRIBUTING.md .

Expresiones de gratitud

Citación

Si utiliza este paquete en su investigación o proyecto, considere citarlo:

@software{fpl_mcp, author = {Jatia, Rishi and Fantasy PL MCP Contributors}, title = {Fantasy Premier League MCP Server}, url = {https://github.com/rishijatia/fantasy-pl-mcp}, version = {0.1.0}, year = {2025}, }
-
security - not tested
A
license - permissive license
-
quality - not tested

Un servidor de Protocolo de Contexto de Modelo que brinda acceso a datos de la Fantasy Premier League, permitiendo a los usuarios comparar jugadores, encontrar información del equipo, ver datos de la semana del juego y obtener asesoramiento relacionado con la FPL a través de Claude for Desktop y otros clientes compatibles con MCP.

  1. Supported Platforms
    1. Features
      1. Requirements
        1. Installation
          1. Option 1: Install from PyPI (Recommended)
          2. Option 1b: Install with Development Dependencies
          3. Option 2: Install from GitHub
          4. Option 3: Clone and Install Locally
        2. Running the Server
          1. 1. Using the CLI command
          2. 2. Using the Python module
          3. 3. Using with Claude Desktop
        3. Usage
          1. In Claude for Desktop
          2. MCP Inspector for Development
        4. Available Resources
          1. Available Tools
            1. Prompt Templates
              1. Development
                1. Adding Features
              2. Authentication
                1. Limitations
                  1. Troubleshooting
                    1. Common Issues
                  2. License
                    1. Contributing
                      1. Acknowledgments
                        1. Citation
                          ID: 2zxsxuxuj9