Skip to main content
Glama
Surya96t

fastf1-mcp-server

fastf1-mcp

CI

Сервер MCP, предоставляющий данные Формулы-1 ИИ-ассистентам через библиотеку FastF1. Задавайте Claude (или любому другому MCP-совместимому клиенту) вопросы о результатах гонок, времени круга, телеметрии, турнирных таблицах и многом другом.


Возможности

  • 21 инструмент, охватывающий турнирные таблицы, результаты гонок, время круга, телеметрию, пит-стопы и квалификации

  • 4 ресурса MCP для расписания, данных о пилотах, конструкторах и справочной информации о трассах

  • 5 готовых промптов для обзоров гонок, анализа квалификаций, глубокого разбора стратегий и превью уик-эндов

  • Асинхронный LRU-кэш сессий — повторные запросы выполняются мгновенно после первой загрузки

  • Выборка телеметрии на основе дистанции — большие наборы необработанных данных сжимаются до ≤ 500 точек

  • Все ошибки возвращаются в виде структурированных словарей — сервер никогда не падает при некорректном вводе


Требования

  • Python 3.12+

  • uv (рекомендуется) или pip


Установка

С помощью uv (рекомендуется)

git clone https://github.com/yourname/fastf1-mcp
cd fastf1-mcp
uv sync

С помощью pip

pip install fastf1-mcp-server

Запуск сервера

# via uv (development)
uv run fastf1-mcp-server

# or directly
python -m fastf1_mcp

MCP Inspector (разработка / отладка)

# 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 .

Оба варианта открывают инспектор по адресу http://localhost:6274.


Конфигурация Claude Desktop

Добавьте следующее в ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) или %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"
      }
    }
  }
}

После сохранения перезапустите Claude Desktop. Имя сервера fastf1 появится на панели инструментов.


Конфигурация

Все настройки считываются из переменных окружения с префиксом FASTF1_MCP_.

Переменная

По умолчанию

Описание

FASTF1_MCP_FASTF1_CACHE_PATH

~/.fastf1_cache

Дисковый кэш для файлов сессий FastF1

FASTF1_MCP_MAX_CACHED_SESSIONS

10

Макс. количество сессий в памяти (LRU)

FASTF1_MCP_DEFAULT_TELEMETRY_SAMPLES

200

Точки выборки телеметрии по умолчанию

FASTF1_MCP_MAX_TELEMETRY_SAMPLES

500

Жесткое ограничение точек выборки телеметрии

FASTF1_MCP_LOG_LEVEL

INFO

Уровень логирования Python


Инструменты

Быстрый поиск (Ergast API — с 1950 по н.в.)

Инструмент

Описание

get_schedule

Получить календарь гонок F1 на сезон.

get_driver_standings

Получить турнирную таблицу пилотов.

get_constructor_standings

Получить турнирную таблицу конструкторов.

get_driver_info

Получить информацию о пилоте.

get_race_results_historical

Получить исторические результаты гонок (до 2018 года или когда данные сессии недоступны).

get_circuit_info

Получить информацию о трассе.

Данные сессий (FastF1 Live Timing — с 2018 по н.в.)

Инструмент

Описание

get_session_results

Получить классификацию/результаты сессии.

get_lap_times

Получить все времена круга пилота в сессии.

get_fastest_laps

Получить лучшие круги в сессии, по одному на пилота.

get_race_pace

Рассчитать средний темп гонки для всех пилотов.

get_stint_analysis

Проанализировать шинные отрезки для гонки.

get_pit_stops

Получить все пит-стопы гонки.

get_qualifying_breakdown

Получить результаты квалификации, разделенные по Q1/Q2/Q3.

Телеметрия (FastF1 Live Timing — с 2018 по н.в.)

Инструмент

Описание

get_lap_telemetry

Получить данные телеметрии для конкретного круга.

compare_telemetry

Сравнить телеметрию двух пилотов в одной сессии.

get_speed_trap_data

Получить данные о скорости в ловушке и максимальной скорости для всех пилотов в сессии.

get_sector_times

Получить лучшие времена секторов и теоретически лучший круг для каждого пилота.

Утилиты

Инструмент

Описание

list_events

Список всех событий сезона.

list_drivers

Список всех пилотов сезона, опционально с фильтром по конкретному событию.

get_cache_status

Проверить статус кэша сессий в памяти сервера.

clear_cache

Очистить кэшированные сессии из памяти.


Ресурсы

URI

Описание

f1://schedule/{year}

Полный календарь гонок сезона

f1://drivers/{year}

Все пилоты, участвовавшие в сезоне

f1://constructors/{year}

Все конструкторы сезона

f1://circuits

Все трассы F1 (за все время)


Промпты

Промпт

Аргументы

Что делает

race_recap

year, event

Вызывает результаты + лучшие круги + пит-стопы + отрезки, затем пересказывает гонку

qualifying_analysis

year, event

Разбор Q + времена секторов + анализ лучших кругов

driver_comparison

year, driver1, driver2

Сравнение на уровне сезона: таблицы, гонки, квалификации

strategy_analysis

year, event

Отрезки + время пит-стопов + темп гонки — объясняет, кто выиграл стратегическую битву

weekend_preview

year, event

Детали трассы + недавняя история + контекст чемпионата


Примеры запросов (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)

Разработка

# 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/

Источники данных и охват

Источник

Охват

Используется для

Ergast API (через FastF1)

1950 – н.в.

Таблицы, расписания, исторические результаты, информация о трассах

FastF1 Live Timing

2018 – н.в.

Время круга, телеметрия, квалификации, пит-стопы, данные о шинах

Примечание: Данные сессий FastF1 доступны только с 2018 года. Используйте get_race_results_historical для более ранних сезонов.


Лицензия

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