Soccer MCP Server

by obinopaul
Verified

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

  • Supports containerized deployment using Docker for easier setup and configuration of the soccer data server

  • Provides access to Premier League data including standings, fixtures, schedules, team information, and match statistics

  • Uses Pydantic for input validation of football data requests and responses

Servidor MCP de fútbol

Un servidor Python que implementa el Protocolo de Contexto de Modelo (MCP) para estadísticas de fútbol y datos de partidos en vivo utilizando el servicio API-Football.

Descripción general

Este servidor proporciona un conjunto completo de herramientas para acceder a datos de fútbol a través de la API de Fútbol. Actúa como puente entre las aplicaciones y los servicios de datos de fútbol, ofreciendo información de partidos en directo y estadísticas históricas de ligas, equipos y jugadores de todo el mundo.

Características

  • Datos de la liga (clasificación, partidos, horarios)
  • Información del equipo y partidos
  • Estadísticas y perfiles de jugadores
  • Datos de partidos en vivo (eventos, estadísticas, cronogramas)
  • Análisis de partidos (estadísticas, eventos)

Configuración

Este servidor requiere una clave API de RapidAPI para el servicio API-Football:

  1. Crea una cuenta en RapidAPI
  2. Suscríbete a la API de fútbol
  3. Establezca la variable de entorno:
    RAPID_API_KEY_FOOTBALL=your_api_key_here

Herramientas

Datos de la liga

  • obtener_id_de_liga_por_nombre
    • Recuperar el ID de la liga para un nombre de liga determinado
    • Ejemplo: get_league_id_by_name(league_name="Premier League")
  • obtener_id_de_todas_las_ligas
    • Recuperar una lista de todas las ligas de fútbol con identificaciones
    • Se puede filtrar por país.
    • Ejemplo: get_all_leagues_id(country=["England", "Spain"])
  • obtener_posiciones
    • Recuperar clasificaciones de ligas para múltiples ligas y temporadas
    • Se puede filtrar por equipo.
    • Ejemplo: get_standings(league_id=[39, 140], season=[2022, 2023])
  • obtener información de la liga
    • Recuperar información sobre una liga de fútbol específica
    • Ejemplo: get_league_info(league_name="Champions League")
  • obtener_partidos_de_la_liga
    • Recupera todos los partidos de una liga y temporada determinadas
    • Ejemplo: get_league_fixtures(league_id=39, season=2023)
  • obtener_el_horario_de_la_liga_por_fecha
    • Recupera el calendario de una liga en fechas específicas
    • Ejemplo: get_league_schedule_by_date(league_name="Premier League", date=["2024-03-08", "2024-03-09"], season="2023")

Datos del jugador

  • obtener_id_del_jugador
    • Recuperar identificaciones de jugadores e información de jugadores que coinciden con un nombre
    • Ejemplo: get_player_id(player_name="Messi")
  • obtener_perfil_del_jugador
    • Recuperar el perfil de un jugador por su apellido
    • Ejemplo: get_player_profile(player_name="Messi")
  • obtener_estadísticas_del_jugador
    • Recupere estadísticas detalladas de los jugadores por temporadas y nombre de la liga
    • Ejemplo: get_player_statistics(player_id=154, seasons=[2022, 2023], league_name="La Liga")
  • obtener_estadísticas_del_jugador_2
    • Recupere estadísticas detalladas de jugadores por temporadas e ID de liga
    • Ejemplo: get_player_statistics_2(player_id=154, seasons=[2022, 2023], league_id=140)

Datos del equipo

  • obtener_partidos_del_equipo
    • Devuelve los partidos pasados o próximos de un equipo.
    • Ejemplo: get_team_fixtures(team_name="Manchester United", type="past", limit=3)
  • obtener_partidos_del_equipo_por_rango_de_fechas
    • Recuperar partidos de un equipo dentro de un rango de fechas
    • Ejemplo: get_team_fixtures_by_date_range(team_name="Liverpool", from_date="2023-09-01", to_date="2023-09-30", season="2023")
  • obtener_información_del_equipo
    • Recuperar información básica sobre un equipo específico
    • Ejemplo: get_team_info(team_name="Real Madrid")

Datos del partido/encuentro

  • obtener estadísticas de accesorios
    • Recupera estadísticas detalladas para un encuentro específico
    • Ejemplo: get_fixture_statistics(fixture_id=867946)
  • obtener_eventos_de_fijación
    • Recupera todos los eventos del juego para un encuentro (goles, tarjetas, sustituciones)
    • Ejemplo: get_fixture_events(fixture_id=867946)
  • obtener estadísticas de múltiples partidos
    • Recupera estadísticas de varios partidos a la vez
    • Ejemplo: get_multiple_fixtures_stats(fixture_ids=[867946, 867947, 867948])

Datos de partidos en vivo

  • obtener_partido_en_vivo_para_el_equipo
    • Comprueba si un equipo está jugando en vivo actualmente
    • Ejemplo: get_live_match_for_team(team_name="Chelsea")
  • obtener estadísticas en vivo para el equipo
    • Recupera estadísticas en vivo del juego para un equipo en un partido.
    • Ejemplo: get_live_stats_for_team(team_name="Liverpool")
  • cronograma de partidos en vivo
    • Recupera la línea de tiempo en tiempo real de los eventos del partido en vivo de un equipo.
    • Ejemplo: get_live_match_timeline(team_name="Manchester City")

Uso

El servidor se implementa utilizando el marco Fast MCP y puede ejecutarse como un servicio independiente.

# Start the server python soccer_server.py # or mcp run soccer-server.py

Configuración

  • El servidor se ejecuta con un tiempo de espera de 30 segundos para un funcionamiento más confiable.
  • Se implementan controladores de señales para un apagado elegante (Ctrl+C)

Uso con Claude Desktop

Opción 1: Usar Docker (recomendado)

  1. Clonar este repositorio
git clone https://github.com/obinopaul/soccer-mcp-server.git cd soccer-mcp-server
  1. Instalar dependencias
pip install -r requirements.txt
  1. Construir la imagen de Docker
docker build -t soccer_server .
  1. Ejecute el contenedor Docker (asegúrese de que su clave API se pase como una variable de entorno)
docker run -d -p 5000:5000 -e RAPID_API_KEY_FOOTBALL=your_api_key_here --name soccer_server soccer_server
  1. Agregue esto a su claude_desktop_config.json :
{ "mcpServers": { "soccer_server": { "command": "docker", "args": [ "exec", "-i", "soccer_server", "python", "soccer_server.py" ], "env": { "RAPID_API_KEY_FOOTBALL": "your_api_key_here" } } } }

Opción 2: Ejecución directa de Python

  1. Clonar este repositorio
git clone https://github.com/obinopaul/soccer-mcp-server.git cd soccer-mcp-server
  1. Instalar dependencias
pip install -r requirements.txt
  1. Establecer la variable de entorno de la clave API
export RAPID_API_KEY_FOOTBALL=your_api_key_here
  1. Agregue esto a su claude_desktop_config.json , ajustando la ruta de Python según sea necesario:
{ "mcpServers": { "soccer_server": { "command": "/path/to/your/python", "args": [ "/path/to/soccer_server.py" ], "env": { "RAPID_API_KEY_FOOTBALL": "your_api_key_here" } } } }

Después de agregar la configuración elegida, reinicia Claude Desktop para cargar el servidor de fútbol. Podrás usar todas las herramientas de datos de fútbol en tus conversaciones con Claude.

Detalles técnicos

El servidor está construido sobre:

  • API-Fútbol a través de RapidAPI
  • MCP para interfaz API
  • Pydantic para validación de entrada
  • Solicitudes de comunicación API

Licencia

Este servidor MCP está disponible bajo la licencia MIT.

-
security - not tested
F
license - not found
-
quality - not tested

Proporciona acceso programático a estadísticas de fútbol completas y datos de partidos en vivo a través de API-Football, lo que permite que las aplicaciones recuperen clasificaciones de la liga, partidos de los equipos, estadísticas de los jugadores y eventos de partidos en tiempo real.

  1. Overview
    1. Features
      1. Configuration
        1. Tools
          1. League Data
          2. Player Data
          3. Team Data
          4. Match/Fixture Data
          5. Live Match Data
        2. Usage
          1. Configuration
          2. Usage with Claude Desktop
        3. Technical Details
          1. License
            ID: myroul4fk9