fastf1-mcp-server
fastf1-mcp
Un servidor MCP que expone datos de Fórmula 1 a asistentes de IA a través de la biblioteca FastF1. Pregúntale a Claude (o a cualquier cliente compatible con MCP) sobre resultados de carreras, tiempos de vuelta, telemetría, clasificaciones y más.
Características
21 herramientas que cubren clasificaciones, resultados de carreras, tiempos de vuelta, telemetría, paradas en boxes y clasificación
4 recursos MCP para datos de referencia de calendario, pilotos, constructores y circuitos
5 prompts guiados para resúmenes de carreras, análisis de clasificación, análisis profundo de estrategias y previas de fin de semana
Caché de sesión LRU segura para asincronía: las consultas repetidas son instantáneas tras la primera carga
Muestreo de telemetría basado en distancia: grandes conjuntos de datos sin procesar comprimidos a ≤ 500 puntos
Todos los errores se devuelven como diccionarios estructurados: el servidor nunca se bloquea ante una entrada incorrecta
Requisitos
Python 3.12+
uv (recomendado) o pip
Instalación
Con uv (recomendado)
git clone https://github.com/yourname/fastf1-mcp
cd fastf1-mcp
uv syncCon pip
pip install fastf1-mcp-serverEjecución del servidor
# via uv (development)
uv run fastf1-mcp-server
# or directly
python -m fastf1_mcpInspector MCP (desarrollo / depuración)
# Option A — official npx inspector
npx @modelcontextprotocol/inspector uv --directory . run fastf1-mcp-server
# Option B — fastmcp wrapper
uv run fastmcp dev inspector -m fastf1_mcp.server --with-editable .Ambos abren el inspector en http://localhost:6274.
Configuración de Claude Desktop
Añade lo siguiente a ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) o %APPDATA%\Claude\claude_desktop_config.json (Windows):
{
"mcpServers": {
"fastf1": {
"command": "uv",
"args": ["run", "fastf1-mcp-server"],
"cwd": "/absolute/path/to/fastf1-mcp",
"env": {
"FASTF1_MCP_LOG_LEVEL": "INFO",
"FASTF1_MCP_MAX_CACHED_SESSIONS": "10"
}
}
}
}Reinicia Claude Desktop después de guardar. El nombre del servidor fastf1 aparecerá en el panel de herramientas.
Configuración
Todos los ajustes se leen de variables de entorno con el prefijo FASTF1_MCP_.
Variable | Predeterminado | Descripción |
|
| Caché en disco para archivos de sesión de FastF1 |
|
| Sesiones máximas mantenidas en memoria (LRU) |
|
| Puntos de muestra de telemetría predeterminados |
|
| Límite máximo de puntos de muestra de telemetría |
|
| Nivel de registro de Python |
Herramientas
Búsqueda rápida (API de Ergast — 1950-presente)
Herramienta | Descripción |
| Obtiene el calendario de carreras de F1 para una temporada. |
| Obtiene la clasificación del campeonato de pilotos. |
| Obtiene la clasificación del campeonato de constructores. |
| Obtiene información del piloto. |
| Obtiene resultados históricos de carreras (antes de 2018 o cuando los datos de sesión no están disponibles). |
| Obtiene información del circuito. |
Datos de sesión (FastF1 Live Timing — 2018-presente)
Herramienta | Descripción |
| Obtiene la clasificación/resultados de la sesión. |
| Obtiene todos los tiempos de vuelta de un piloto en una sesión. |
| Obtiene las vueltas más rápidas en una sesión, una por piloto. |
| Calcula el ritmo de carrera promedio para todos los pilotos. |
| Analiza los stints de neumáticos para una carrera. |
| Obtiene todas las paradas en boxes de una carrera. |
| Obtiene los resultados de clasificación divididos por Q1/Q2/Q3. |
Telemetría (FastF1 Live Timing — 2018-presente)
Herramienta | Descripción |
| Obtiene datos de telemetría para una vuelta específica. |
| Compara la telemetría entre dos pilotos en la misma sesión. |
| Obtiene datos de trampa de velocidad y velocidad máxima para todos los pilotos en una sesión. |
| Obtiene los mejores tiempos de sector y la mejor vuelta teórica para cada piloto. |
Utilidad
Herramienta | Descripción |
| Lista todos los eventos en una temporada. |
| Lista todos los pilotos en una temporada, opcionalmente filtrados por un evento específico. |
| Comprueba el estado de la caché de sesión en memoria del servidor. |
| Borra las sesiones cacheadas del almacenamiento en memoria. |
Recursos
URI | Descripción |
| Calendario completo de carreras para una temporada |
| Todos los pilotos que compitieron en una temporada |
| Todos los constructores en una temporada |
| Todos los circuitos de F1 (históricos) |
Prompts
Prompt | Argumentos | Qué hace |
|
| Llama a resultados + vueltas rápidas + paradas en boxes + stints, luego narra la carrera |
|
| Desglose de Q + tiempos de sector + análisis de mejores vueltas |
|
| Cara a cara a nivel de temporada: clasificaciones, carreras, clasificación |
|
| Stints + tiempos de boxes + ritmo de carrera — explica quién ganó la batalla estratégica |
|
| Detalles del circuito + historia reciente + contexto del campeonato |
Ejemplos de consultas (Claude Desktop)
Who won the 2024 Monaco Grand Prix and what was the strategy?
→ use race_recap prompt or call get_session_results + get_stint_analysis
Compare Verstappen and Leclerc's telemetry in 2024 Monaco qualifying
→ compare_telemetry(2024, "Monaco", "Q", "VER", "LEC")
Who had the fastest theoretical lap in 2024 Silverstone qualifying?
→ get_sector_times(2024, "Silverstone", "Q")
Show me the 2024 constructor standings after round 10
→ get_constructor_standings(2024, after_round=10)Desarrollo
# Install dev dependencies
uv sync --dev
# Run tests
uv run pytest
# Run tests with coverage
uv run pytest --cov=fastf1_mcp
# Lint
uv run ruff check src/Fuentes de datos y cobertura
Fuente | Cobertura | Usado para |
API de Ergast (vía FastF1) | 1950 – presente | Clasificaciones, calendarios, resultados históricos, información de circuitos |
2018 – presente | Tiempos de vuelta, telemetría, clasificación, paradas en boxes, datos de neumáticos |
Nota: Los datos de sesión de FastF1 solo están disponibles a partir de 2018. Usa
get_race_results_historicalpara temporadas anteriores.
Licencia
MIT
Latest Blog Posts
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/Surya96t/fastf1-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server