F1 API MCP服务器
一种模型上下文协议(MCP)服务器,提供对一级方程式赛车手和车队数据的访问。
描述
该项目实现了一个MCP服务器,该服务器通过模型上下文协议(MCP)公开一级方程式赛车手和车队数据。该服务器提供对F1车手和车队信息的访问,包括当前和历史数据。
安装
# Clone the repository
git clone
cd mcp-f1
# Install dependencies
npm install用法
运行服务器
# Start the server
npm start配置Claude以使用此MCP服务器
要将此MCP服务器与Claude一起使用,您需要配置Claude以识别并连接到它:
- 查找您的Claude配置文件(通常位于
%APPDATA%\Claude\claude_desktop_config.json)
- 添加以下配置以启用F1 MCP服务器:
{
"mcpServers": {
"f1": {
"command": "node",
"args": ["C:/Users/SURYA/Desktop/mcp-f1/index.js"]
}
}
}- 调整路径
args字段以匹配您安装项目的位置。
- 重新启动Claude以使更改生效。
故障排除
如果F1服务器在Claude中显示为“Disabled”:
- 确保您正在运行服务器
npm start而且它没有崩溃。 - 检查Claude配置中的路径是否指向正确的位置
index.js. - 确保你的Node.js安装没有错误(建议使用Node.js 18+)。
- 确保除了有效的JSON之外,您没有向stdout输出任何内容(不要使用
console.log,仅console.error用于调试)。 - 检查克劳德的日志是否有任何错误消息。
- 确保您的
index.js所有函数文件都使用ESM(导入/导出)语法,而不是CommonJS(require/module.exports)。 - 如果您对代码进行了更改,只需重新启动服务器即可——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请求
许可证
国际协调委员会
