Formula 1 MCP Server
Access extensive Formula 1 statistics and information using the FastF1 library and OpenF1 API.
🏁 Formula 1 MCP Server 🏎️
This project defines a MCP server for Formula 1 data, providing fans, analysts, and developers with easy access to a vast range of F1 statistics and information. Built with Python and powered by the Gradio framework, it offers a user-friendly web interface to explore historical and recent F1 data from the FastF1 library and the official OpenF1 API.
Video Demo (Claude Desktop)
Architecture
Architectural overview of the MCP server and client. The MCP server is hosted using a Gradio back-end and can be either run locally or on a remote server.
Gradio Key Features
The interface is organized into several Gradio tabs, each dedicated to a specific type of F1 data:
- Championship Standings: View final driver and constructor championship standings for any season from 1950 to the present.
- Event Information: Get detailed information for any Grand Prix, including schedules and circuit details.
- Season Calendar: Display the complete race calendar for a given year.
- Track Visualizations: Generate and view plots of the fastest race lap, visualizing speed, gear changes, and cornering G-forces.
- Session Results: Fetch detailed results for any race session (Practice, Qualifying, or Race).
- Driver & Constructor Info: Look up background information and statistics for drivers and teams.
- OpenF1 API Tools: An advanced toolkit for developers to directly query the OpenF1 API, build custom requests, and view raw JSON responses.
Tech Stack
- Backend: Python
- Web Framework: Gradio
- Data Sources:
fastf1Python library for historical data.openf1for live and recent data via their public API.
- Key Libraries:
pandas,matplotlib
MCP Server
The MCP server is defined inside app.py.
MCP Client
The MCP client and AI agent is defined inside mcp_client.py and allows interaction with the MCP server through server side events (SSE) transport.
MCP configuration file
For MCP clients that support SSE transport (for Claude Desktop, see below), the following configuration can be used:
{
"mcpServers": {
"gradio": {
"url": "https://agents-mcp-hackathon-f1-mcp-server.hf.space/gradio_api/mcp/sse"
}
}
}
For Claude Desktop, the following configuration can instead be used, but make sure you have Node.js installed:
{
"mcpServers": {
"gradio": {
"command": "npx",
"args": [
"mcp-remote",
"https://agents-mcp-hackathon-f1-mcp-server.hf.space/gradio_api/mcp/sse",
"--transport",
"sse-only"
]
}
}
}
Related Servers
CData MySQL MCP Server
A read-only MCP server for MySQL, enabling LLMs to query live data using the CData JDBC Driver.
CData Salesforce MCP Server
A read-only MCP server by CData that allows LLMs to query live Salesforce data. Requires the CData JDBC Driver for Salesforce.
MCP PGVector Server
Provides semantic search capabilities for PostgreSQL databases using the pgvector extension, with support for multiple embedding providers.
Amela MCP Memory Tool
A local, high-performance memory server for AI agents, built with SQLite, vector embeddings, and a knowledge graph. Packaged for npm and Docker.
AlibabaCloud DMS MCP Server
An AI-powered gateway for managing over 40 data sources like Alibaba Cloud and mainstream databases, featuring NL2SQL, code generation, and data migration.
Supabase Next.js Server
A simple notes system for Next.js applications using Supabase as the backend.
Canteen Data
Query employee canteen dining data, providing breakfast and lunch attendance statistics within a specified date range.
AITable
Provides read and write access to AITable.ai, a collaborative database and spreadsheet platform.
OpenCTI MCP Server
Integrates with the OpenCTI platform to query and retrieve threat intelligence data.
Outreach.io by CData
A read-only MCP server for querying live data from Outreach.io using the CData JDBC Driver.