F1数据API服务

一个提供F1赛车手和车队数据的MCP服务器,包括当前和历史数据。

  • by SuryaKTiwari11
  • JavaScript
  • 本地部署
  • 更新于
在 GitHub 查看 suryaktiwari11/mcp-f1

使用说明

F1 API MCP服务器

一种模型上下文协议(MCP)服务器,提供对一级方程式赛车手和车队数据的访问。

描述

该项目实现了一个MCP服务器,该服务器通过模型上下文协议(MCP)公开一级方程式赛车手和车队数据。该服务器提供对F1车手和车队信息的访问,包括当前和历史数据。

安装

# Clone the repository
git clone <your-repo-url>
cd mcp-f1

# Install dependencies
npm install

用法

运行服务器

# Start the server
npm start

配置Claude以使用此MCP服务器

要将此MCP服务器与Claude一起使用,您需要配置Claude以识别并连接到它:

  1. 查找您的Claude配置文件(通常位于 %APPDATA%\Claude\claude_desktop_config.json)

  2. 添加以下配置以启用F1 MCP服务器:

{
  "mcpServers": {
    "f1": {
      "command": "node",
      "args": ["C:/Users/SURYA/Desktop/mcp-f1/index.js"]
    }
  }
}
  1. 调整路径 args 字段以匹配您安装项目的位置。

  2. 重新启动Claude以使更改生效。

故障排除

如果F1服务器在Claude中显示为“Disabled”:

  1. 确保您正在运行服务器 npm start 而且它没有崩溃。
  2. 检查Claude配置中的路径是否指向正确的位置 index.js.
  3. 确保你的Node.js安装没有错误(建议使用Node.js 18+)。
  4. 确保除了有效的JSON之外,您没有向stdout输出任何内容(不要使用 console.log,仅 console.error 用于调试)。
  5. 检查克劳德的日志是否有任何错误消息。
  6. 确保您的 index.js 所有函数文件都使用ESM(导入/导出)语法,而不是CommonJS(require/module.exports)。
  7. 如果您对代码进行了更改,只需重新启动服务器即可——JavaScript不需要构建步骤。

可用工具

此MCP服务器提供以下工具:

  • 获取所有河流
  • 搜索_河流
  • get_driver_by_id
  • get_current驱动程序
  • get_all_teams
  • 搜索_团队
  • get_team_by_id
  • get_current_teams

API终点

F1 API MCP服务器公开了以下工具:

获取所有河流

获取所有一级方程式赛车手,包括现役和退役车手。

参数:

  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

搜索_河流

按姓名搜索一级方程式赛车手。

参数:

  • q:搜索司机姓名
  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

get_driver_by_id

通过他们的ID获得一级方程式赛车手。

参数:

  • driverId:驾驶员的唯一标识符

get_current驱动程序

获取本赛季的所有F1车手。

参数:

  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

get_all_teams

获取所有一级方程式车队,包括现役和历史车队。

参数:

  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

搜索_团队

按名称搜索F1车队。

参数:

  • q:搜索团队名称查询
  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

get_team_by_id

通过他们的ID获得一级方程式车队。

参数:

  • teamId:团队的唯一标识符

get_current_teams

获取当前赛季的所有F1车队。

参数:

  • limit (可选):每个请求要返回的记录数(默认值:30)
  • offset (可选):开始获取之前要跳过的记录数(默认值:0)

响应格式

每个端点都以标准化的格式返回数据,其中包含元数据,例如:

  • API基本URL
  • 完整请求URL
  • 分页信息(限制、偏移、总计)
  • 季节信息(如适用)
  • 驾驶员数据,包括ID、姓名、国籍、赛车号码等。
  • 团队数据,包括ID、姓名、国籍、锦标赛等。

发展

该项目基于Node.js构建,并使用:

  • 模型上下文协议SDK
  • Zod用于模式验证
  • Axios用于HTTP请求

许可证

国际协调委员会