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
GraphDB
Provides read-only access to an Ontotext GraphDB repository.
MemoryMesh
A knowledge graph server for AI models, focusing on text-based RPGs and interactive storytelling.
MySQL
A server for managing MySQL databases.
MCP Memory Server - Python Implementation
A Python implementation of the MCP memory server for knowledge graph storage and retrieval, using JSONL files for persistence.
OSV
Access the OSV (Open Source Vulnerabilities) database for vulnerability information. Query vulnerabilities by package version or commit, batch query multiple packages, and get detailed vulnerability information by ID.
QMT MCP Server
Download and query stock market data using the QMT platform.
SQL Analyzer
Analyze, lint, and convert SQL dialects using SQLGlot.
KuzuMem-MCP
A distributed memory bank MCP tool that stores memories in a KรนzuDB graph database, with repository and branch filtering capabilities.
Local Context Memory MCP
A production-ready persistent memory system for AI agents, offering searchable memory across sessions with semantic search and support for multiple database backends.
Node MSSQL
A server for interacting with Microsoft SQL Server databases using the node-mssql library.