fastf1-mcp-server
fastf1-mcp
Сервер 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_mcpMCP 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 |
|
| Макс. количество сессий в памяти (LRU) |
|
| Точки выборки телеметрии по умолчанию |
|
| Жесткое ограничение точек выборки телеметрии |
|
| Уровень логирования Python |
Инструменты
Быстрый поиск (Ergast API — с 1950 по н.в.)
Инструмент | Описание |
| Получить календарь гонок F1 на сезон. |
| Получить турнирную таблицу пилотов. |
| Получить турнирную таблицу конструкторов. |
| Получить информацию о пилоте. |
| Получить исторические результаты гонок (до 2018 года или когда данные сессии недоступны). |
| Получить информацию о трассе. |
Данные сессий (FastF1 Live Timing — с 2018 по н.в.)
Инструмент | Описание |
| Получить классификацию/результаты сессии. |
| Получить все времена круга пилота в сессии. |
| Получить лучшие круги в сессии, по одному на пилота. |
| Рассчитать средний темп гонки для всех пилотов. |
| Проанализировать шинные отрезки для гонки. |
| Получить все пит-стопы гонки. |
| Получить результаты квалификации, разделенные по Q1/Q2/Q3. |
Телеметрия (FastF1 Live Timing — с 2018 по н.в.)
Инструмент | Описание |
| Получить данные телеметрии для конкретного круга. |
| Сравнить телеметрию двух пилотов в одной сессии. |
| Получить данные о скорости в ловушке и максимальной скорости для всех пилотов в сессии. |
| Получить лучшие времена секторов и теоретически лучший круг для каждого пилота. |
Утилиты
Инструмент | Описание |
| Список всех событий сезона. |
| Список всех пилотов сезона, опционально с фильтром по конкретному событию. |
| Проверить статус кэша сессий в памяти сервера. |
| Очистить кэшированные сессии из памяти. |
Ресурсы
URI | Описание |
| Полный календарь гонок сезона |
| Все пилоты, участвовавшие в сезоне |
| Все конструкторы сезона |
| Все трассы F1 (за все время) |
Промпты
Промпт | Аргументы | Что делает |
|
| Вызывает результаты + лучшие круги + пит-стопы + отрезки, затем пересказывает гонку |
|
| Разбор Q + времена секторов + анализ лучших кругов |
|
| Сравнение на уровне сезона: таблицы, гонки, квалификации |
|
| Отрезки + время пит-стопов + темп гонки — объясняет, кто выиграл стратегическую битву |
|
| Детали трассы + недавняя история + контекст чемпионата |
Примеры запросов (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 – н.в. | Таблицы, расписания, исторические результаты, информация о трассах |
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