Formula One MCP Server (Python)
フォーミュラワン MCP サーバー
F1レースデータを提供するモデルコンテキストプロトコル(MCP)サーバー。このパッケージは、イベントスケジュール、ドライバー情報、テレメトリデータ、レース結果など、F1データを照会するための様々なツールを公開しています。
特徴
イベントスケジュール: どのシーズンでも完全なF1レースカレンダーにアクセスできます
イベント情報:特定のグランプリイベントに関する詳細データ
セッション結果: レース、予選セッション、スプリント、練習セッションの総合結果
ドライバー情報: 特定のセッションのドライバーの詳細にアクセスします
パフォーマンス分析: ラップタイム統計でドライバーのパフォーマンスを分析する
ドライバー比較: 同じセッションで複数のドライバーのパフォーマンスを比較します
テレメトリデータ: 特定のラップの詳細なテレメトリにアクセスします
チャンピオンシップ順位表: どのシーズンでもドライバーとコンストラクターの順位表を表示
Related MCP server: Formula One MCP Server
インストール
Smithery経由でインストール
Smithery経由で Claude Desktop 用の f1-mcp-server を自動的にインストールするには:
npx -y @smithery/cli install @Machine-To-Machine/f1-mcp-server --client claude手動インストール
uv管理 Python プロジェクトでは、次のように依存関係を追加します。
uv add f1-mcp-serverあるいは、依存関係にpipを使用するプロジェクトの場合:
pip install f1-mcp-serverプロジェクト内でサーバーを実行するには:
uv run f1-mcp-serverまたは、分離された環境でグローバルに実行するには:
uvx f1-mcp-serverソースから直接インストールするには:
git clone https://github.com/Machine-To-Machine/f1-mcp-server.git
cd f1-mcp-server
pip install -e .使用法
コマンドライン
サーバーは次の 2 つのモードで実行できます。
標準I/Oモード(デフォルト):
uvx run f1-mcp-serverSSE トランスポート モード(Web アプリケーション用):
uvx f1-mcp-server --transport sse --port 8000Python API
from f1_mcp_server import main
# Run the server with default settings
main()
# Or with SSE transport settings
main(port=9000, transport="sse")APIドキュメント
サーバーは、MCP を介して次のツールを公開します。
ツール名 | 説明 |
| 特定のシーズンのF1レースカレンダーを取得する |
| 特定のF1グランプリに関する詳細情報を入手 |
| 特定のF1セッションの結果を取得する |
| 特定のF1ドライバーに関する情報を取得する |
| F1セッションでのドライバーのパフォーマンスを分析する |
| 複数のF1ドライバーのパフォーマンスを比較する |
| 特定のF1ラップのテレメトリデータを取得する |
| F1チャンピオンシップの順位表を見る |
基礎データの詳細については、FastF1 ドキュメントを参照してください: FastF1 ドキュメント
依存関係
anyio (>=4.9.0)
クリック (>=8.1.8)
fastf1 (>=3.5.3)
mcp (>=1.6.0)
numpy (>=2.2.4)
パンダ (>=2.2.3)
uvicorn (>=0.34.0)
発達
開発環境のセットアップ
git clone https://github.com/Machine-To-Machine/f1-mcp-server.git
cd f1-mcp-server
uv venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
uv pip install -e ".[dev]"コード品質
# Run linting
uv run ruff check .
# Run formatting check
uv run ruff format --check .
# Run security checks
uv run bandit -r src/寄稿ガイドライン
リポジトリをフォークする
機能ブランチを作成する:
git checkout -b feature-name変更をコミットします:
git commit -am 'Add some feature'ブランチにプッシュ:
git push origin feature-nameプルリクエストを送信する
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細については LICENSE ファイルを参照してください。
著者
マシンツーマシン
謝辞
このプロジェクトは、F1データにアクセスするための優れたPythonパッケージであるFastF1を活用しています。FastF1のメンテナーと貢献者の皆様に感謝申し上げます。
このプロジェクトは、TypeScriptで書かれたrakeshgangwar/f1-mcp-serverに触発されました。f1_data.pyモジュールはf1_data.py主にそのソースコードから改変したものです。
Available Tools
8 toolsanalyze_driver_performanceC
Analyze a driver's performance in a Formula One session
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| event_identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') | |
| session_name | Yes | Session name (e.g., 'Race', 'Qualifying', 'Sprint', 'FP1', 'FP2', 'FP3') | |
| driver_identifier | Yes | Driver identifier (number, code, or name; e.g., '44', 'HAM', 'Hamilton') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, and the description fails to disclose behavioral traits such as whether the tool is read-only, requires authentication, or has side effects. It is extremely vague.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Single sentence, no waste. However, it sacrifices necessary detail for brevity, scoring slightly above average.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema, no annotations, and no explanation of what the analysis produces. The description is incomplete for a 4-parameter tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Input schema has 100% description coverage, so the baseline is 3. The description does not add additional meaning beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'analyze', the resource 'driver's performance', and the context 'Formula One session'. It effectively distinguishes from sibling tools like compare_drivers and get_driver_info.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance on when to use this tool versus alternatives. It lacks explicit context cues or when-not-to-use advice.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
compare_driversB
Compare performance between multiple Formula One drivers
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| event_identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') | |
| session_name | Yes | Session name (e.g., 'Race', 'Qualifying', 'Sprint', 'FP1', 'FP2', 'FP3') | |
| drivers | Yes | Comma-separated list of driver codes (e.g., 'HAM,VER,LEC') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description should disclose behavioral traits like side effects, rate limits, or return format, but it only states the purpose. It does not indicate that the tool is read-only or what performance metrics are compared.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence with no wasted words, achieving efficient communication of the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description is minimal given the tool's complexity (4 required parameters, no output schema, multiple siblings). It does not explain what 'performance' entails, how comparison is presented, or any constraints like driver codes.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each parameter already has a description. The tool description adds no additional meaning to the parameters; baseline score of 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states 'Compare performance between multiple Formula One drivers' with a specific verb and resource, and it distinguishes from siblings like 'get_driver_info' or 'analyze_driver_performance' by focusing on comparison across multiple drivers.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool vs alternatives such as 'analyze_driver_performance' or 'get_session_results'. The description does not mention context or exclusions.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_championship_standingsC
Get Formula One championship standings
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| round_num | No | Round number (optional, gets latest standings if not provided) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of disclosing behavior. It only states the basic action without mentioning what data is returned, how errors are handled, or any side effects. This is insufficient for a tool that likely returns complex standings data.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema, the description should explain what the response contains (e.g., drivers' or constructors' standings). It fails to do so, leaving the agent without essential context about the tool's return value.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the input schema itself documents both parameters well. The description adds no additional meaning beyond what the schema provides, earning the baseline score of 3. It does not clarify the output structure or any parameter dependencies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'Formula One championship standings'. It is specific enough to distinguish from sibling tools like get_session_results or get_driver_info, though it does not specify if standings are for drivers or constructors.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives. There is no mention of prerequisites, typical use cases, or scenarios where another tool would be more appropriate.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_driver_infoC
Get information about a specific Formula One driver
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| event_identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') | |
| session_name | Yes | Session name (e.g., 'Race', 'Qualifying', 'Sprint', 'FP1', 'FP2', 'FP3') | |
| driver_identifier | Yes | Driver identifier (number, code, or name; e.g., '44', 'HAM', 'Hamilton') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden of behavioral disclosure. It only states the basic purpose, offering no details about side effects (none expected), authentication needs, rate limits, or data freshness. The agent is left guessing about operational characteristics.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that is concise and front-loaded with the key action and resource. No unnecessary words or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite 4 required parameters and no output schema, the description fails to explain what information is returned, any constraints (e.g., driver must be participating in the session), or possible error conditions. It is insufficiently complete for a data retrieval tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers 100% of parameters with descriptions, so the baseline is 3. The description adds no extra semantic information beyond what the schema already provides; it just paraphrases the tool's purpose.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get') and resource ('information about a specific Formula One driver'), distinguishing it from sibling tools like 'get_telemetry' or 'get_session_results'. However, it could more precisely indicate that it returns session-level information, as implied by the required parameters.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives like 'analyze_driver_performance' or 'compare_drivers'. There is no mention of prerequisites, exclusions, or use cases, leaving the agent to infer from names alone.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_event_infoB
Get detailed information about a specific Formula One Grand Prix
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. It only says 'get detailed information' without mentioning data freshness, permissions, or what 'detailed' means. The lack of any behavioral context leaves the agent guessing.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that immediately conveys the tool's purpose. It is front-loaded and contains no unnecessary words.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool lacks an output schema and the description does not specify what 'detailed information' includes. Given the complexity of F1 data, the description is incomplete—it fails to set expectations for the response content, leaving the agent in the dark.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% with descriptions for both parameters (year and identifier). The description adds no extra meaning beyond the schema's parameter descriptions. With high coverage, baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: retrieving detailed information about a specific Formula One Grand Prix. The verb 'Get' and resource 'detailed information' are explicit, and it distinguishes from siblings like get_event_schedule (schedule) and get_session_results (results).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no explicit guidance on when to use this tool versus alternatives like get_event_schedule or get_driver_info. The purpose is implied but no exclusions or comparative context are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_event_scheduleA
Get Formula One race calendar for a specific season
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose all behavioral traits. It states a simple read operation but does not mention any specifics such as data freshness, caching, rate limits, or whether the calendar includes future races only.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, front-loaded sentence with no unnecessary words. It efficiently conveys the tool's purpose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple one-parameter tool with no output schema, the description is largely adequate. However, it could hint at the return format (e.g., 'list of events with dates') to help the agent set expectations.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, and the description adds no additional meaning beyond the schema's description of the 'year' parameter. The description reiterates 'specific season' but does not provide format or constraints beyond what the schema already offers.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get', the resource 'Formula One race calendar', and the scope 'for a specific season'. It distinguishes from siblings like get_event_info (specific event) and get_championship_standings (standings) by focusing on the full schedule.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies that this tool is for retrieving an entire season's calendar, but it does not explicitly state when to use this over alternatives like get_event_info or get_session_results. No exclusions or prerequisites are mentioned.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_session_resultsC
Get results for a specific Formula One session
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| event_identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') | |
| session_name | Yes | Session name (e.g., 'Race', 'Qualifying', 'Sprint', 'FP1', 'FP2', 'FP3') |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description alone must convey behavioral traits, but it only states the basic function. It does not disclose read-only nature, authentication needs, or any side effects. The agent learns nothing beyond what the name implies.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single concise sentence that front-loads the purpose. However, it is slightly too brief and could benefit from a bit more context without being verbose.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with three required parameters and no output schema, the description is minimally adequate but lacks details on the returned data format or any edge cases. It does not explain what 'results' entail, leaving ambiguity.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3. The description adds no additional meaning beyond the parameter names and descriptions already in the schema. It does not provide defaults, examples, or constraints beyond what is listed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the action ('Get results') and the specific resource ('a specific Formula One session'). It is distinct from sibling tools like get_driver_info or get_championship_standings, which cover different aspects. However, it could be more explicit about what 'results' includes (e.g., finishing positions, times).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No guidance is provided on when to use this tool versus alternatives, such as analyze_driver_performance or get_event_info. There is no mention of prerequisites, limitations, or comparison with siblings.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
get_telemetryC
Get telemetry data for a specific Formula One lap
| Name | Required | Description | Default |
|---|---|---|---|
| year | Yes | Season year (e.g., 2023) | |
| event_identifier | Yes | Event name or round number (e.g., 'Monaco' or '7') | |
| session_name | Yes | Session name (e.g., 'Race', 'Qualifying', 'Sprint', 'FP1', 'FP2', 'FP3') | |
| driver_identifier | Yes | Driver identifier (number, code, or name; e.g., '44', 'HAM', 'Hamilton') | |
| lap_number | No | Lap number (optional, gets fastest lap if not provided) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavioral traits. However, it only states the action and resource, omitting information about permissions, rate limits, data format, or potential errors. The agent lacks context about what 'telemetry data' entails or any side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single, concise sentence that directly conveys the tool's purpose without any extraneous words. It is well-structured and front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the absence of an output schema and the moderate complexity (5 parameters), the description fails to explain what telemetry data is returned (e.g., speed, throttle, braking), nor does it cover return format or units. This is insufficient for an agent to correctly interpret the tool's response.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, providing descriptions for each parameter. The tool description adds little beyond 'specific lap', which is already implied by the 'lap_number' parameter description. Baseline score of 3 is appropriate as the description does not enhance parameter semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb 'Get' and the resource 'telemetry data for a specific Formula One lap'. It is specific enough to differentiate from sibling tools like 'get_driver_info' or 'get_session_results', though it does not explicitly compare to them.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides no guidance on when to use this tool versus alternatives. It does not mention prerequisites, context, or exclusions. For example, it doesn't clarify that this tool is for detailed telemetry versus aggregated performance data.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.
8 tool updates
- First observed
analyze_driver_performance - First observed
compare_drivers - First observed
get_championship_standings - First observed
get_driver_info - First observed
get_event_info - First observed
get_event_schedule - First observed
get_session_results - First observed
get_telemetry
TDQS
All 8 tools target distinct aspects of Formula One data—drivers, events, sessions, championships, and telemetry—with no overlapping functionality. Each has a clear, non-redundant purpose.
Every tool uses a consistent verb_noun pattern with lowercase and underscores (e.g., get_driver_info, analyze_driver_performance). The naming is predictable and adheres to a single convention.
With 8 tools, the server is well-scoped for its domain. It covers essential F1 operations without being too sparse or overly granular, making it ideal for most common queries without excessive complexity.
The tool set covers major areas: driver info, performance analysis, comparisons, standings, event details, schedule, session results, and telemetry. One minor gap is lack of team/constructor info, but the surface is otherwise comprehensive for a dedicated F1 server.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
A comprehensive Model Context Protocol (MCP) server that enables AI assistants to interact with yo…
Primarily to be used as a template repository for developing MCP servers with FastMCP in Python, P…
Model Context Protocol server for the Apideck Unified API. Connect any MCP-compatible agent framework to 100+ accounting systems, HRIS platforms, file storage providers, and more through one integration. More information https://www.apideck.com/mcp-server
A simple MCP server built with FastMCP and python
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceProvides real-time and historical Formula 1 racing data through the Model Context Protocol, offering access to timing data, driver stats, race results, telemetry, and more.15MIT
- AlicenseAqualityDmaintenanceA Model Context Protocol server that provides comprehensive Formula One racing data, enabling access to event schedules, driver information, telemetry data, race results, and performance analytics through natural language queries.81MIT
- AlicenseAqualityCmaintenanceMCP server for Formula 1 data via the FastF1 library. Ask Claude (or any MCP-compatible client) about race results, lap times, telemetry, standings, pit stops, and qualifying — with historical data back to 1950 via the Ergast API.21MIT
- AlicenseAqualityCmaintenanceA local MCP server that gives Claude (or any MCP-compatible AI client) access to Formula 1 race data. Load any session from 2018 onwards, ask questions in natural language, and get answers backed by real telemetry, timing, and strategy data.171MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Machine-To-Machine/f1-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server