MLB SportRadar
Accede a datos de juegos de la MLB, clasificaciones y estadísticas de jugadores utilizando la API de SportRadar.
Documentación
Servidor MCP de MLB SportRadar
Servidor de Protocolo de Contexto de Modelo (MCP) para conectar Claude con la API de MLB de SportRadar. Proporciona herramientas para acceder a datos de juegos de MLB, clasificaciones, estadísticas de jugadores y más a través de la API de SportRadar.
Requisitos
- Python 3.12 o superior
- SDK de Python del Protocolo de Contexto de Modelo (MCP)
- httpx
- python-dotenv
- Clave de API de SportRadar
Configuración
1. Obtener la clave de API de SportRadar
- Regístrate en Portal de desarrolladores de SportRadar
- Obtén tu clave de API de MLB (de prueba o producción)
2. Instalar uv (recomendado)
curl -LsSf https://astral.sh/uv/install.sh | sh
3. Clonar este repositorio
git clone https://github.com/yourusername/mlb-sportradar-mcp.git
cd mlb-sportradar-mcp
4. Crear y activar un entorno virtual
# Create virtual environment
uv venv
# Activate virtual environment
# On macOS/Linux:
source .venv/bin/activate
# On Windows:
.venv\Scripts\activate
5. Instalar dependencias
# Option 1: Using uv (recommended)
uv sync
# Option 2: Using pip with requirements.txt
pip install -r requirements.txt
# Option 3: Install as editable package
uv pip install -e .
6. Configurar variables de entorno
Crea un archivo .env en la raíz del proyecto con tu clave de API de SportRadar:
SPORTRADAR_API_KEY=your_api_key_here
Uso
1. Configurar Claude Desktop
Primero, instala la CLI de MCP globalmente:
uv tool install "mcp[cli]"
Luego agrega este servidor a tu archivo de configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en macOS):
{
"mcpServers": {
"MLB SportRadar": {
"command": "/Users/<USERNAME>/.local/share/uv/tools/mcp/bin/mcp",
"args": ["run", "/full/path/to/mlb-sportradar-mcp/src/mlb_sportradar_mcp/server.py"]
}
}
}
Importante: Reemplaza /full/path/to/ con la ruta absoluta real a tu directorio mlb-sportradar-mcp.
Reinicia Claude Desktop después de guardar la configuración.
2. Usar el servidor MCP con Claude
Una vez configurado, Claude Desktop tendrá acceso a estas herramientas de MLB SportRadar:
Datos de juegos:
get_daily_schedule: Obtén el calendario de MLB para una fecha específica o hoyget_game_summary: Obtén información resumida de un juego específicoget_game_boxscore: Obtén la caja de anotaciones detallada de un juego específicoget_game_play_by_play: Obtén datos detallados de jugada por jugada de un juegoget_game_pitch_metrics: Obtén métricas a nivel de lanzamiento y datos de Statcast
Equipos y liga:
get_standings: Obtén las clasificaciones de MLB para un año y liga específicosget_team_profile: Obtén información detallada del equipoget_team_roster: Obtén la lista actual de jugadores de un equipo específicoget_team_hierarchy: Obtén la jerarquía completa de equipos de MLB con divisionesget_seasonal_statistics: Obtén estadísticas de temporada de un equipo
Datos de jugadores:
get_player_profile: Obtén información detallada del jugadorget_player_seasonal_stats: Obtén estadísticas de temporada de un jugadorget_seasonal_splits: Obtén divisiones de jugador (local/visitante, contra zurdos/diestros, etc.)get_league_leaders: Obtén líderes de la liga de MLB en varias categorías
Información de la liga:
get_injuries: Obtén el informe actual de lesiones de MLBget_transactions: Obtén transacciones de MLB para una fecha específicaget_draft_summary: Obtén el resumen del draft de MLB para un año específico
Ejemplos de consultas para probar con Claude:
- "Muéstrame el calendario de MLB de hoy"
- "Obtén las clasificaciones actuales de la Liga Americana"
- "¿Cuáles son los líderes actuales de bateo en MLB?"
- "Muéstrame el informe de lesiones de MLB"
- "Obtén datos de jugada por jugada del juego [game_id]"
- "Muéstrame métricas de lanzamiento del último juego"
- "Obtén divisiones de jugador para [nombre_del_jugador]"
- "¿Qué transacciones ocurrieron hoy en MLB?"
Desarrollo y pruebas
Instala las dependencias de desarrollo y ejecuta el conjunto de pruebas con:
uv sync --all-extras
pytest -v tests
Ejecutar el servidor localmente
Para iniciar el servidor manualmente (útil al desarrollar o probar), ejecuta:
mlb-sportradar-mcp
Alternativamente, puedes ejecutarlo directamente con:
uv run python src/mlb_sportradar_mcp/server.py
Instalar la CLI de MCP globalmente
Si deseas usar comandos de mcp run, instala la CLI de MCP globalmente:
uv tool install "mcp[cli]"
Luego puedes ejecutar:
mcp run src/mlb_sportradar_mcp/server.py
Endpoints de la API
Este servidor MCP utiliza los endpoints de la API v8 de MLB de SportRadar:
- Calendario:
/en/games/{year}/{month}/{day}/schedule.json - Resumen del juego:
/en/games/{game_id}/summary.json - Caja de anotaciones del juego:
/en/games/{game_id}/boxscore.json - Clasificaciones:
/en/seasons/{year}/standings.json - Perfil del jugador:
/en/players/{player_id}/profile.json - Perfil del equipo:
/en/teams/{team_id}/profile.json - Líderes de la liga:
/en/seasons/{year}/leaders.json - Lista del equipo:
/en/teams/{team_id}/roster.json - Lesiones:
/en/injuries.json
Límites de velocidad
Ten en cuenta los límites de velocidad de la API de SportRadar. La API de prueba generalmente tiene límites más bajos que las claves de producción. Monitorea tu uso para evitar alcanzar los límites de velocidad.
Licencia
MIT