F1数据服务

一个通过WhatsApp提供全面F1数据的服务,包括赛季、赛道、比赛、车队、车手、结果、冲刺赛、排位赛、进站、圈速、排名和状态信息。

  • by gw-dg
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 gw-dg/f1-mcp-server

使用说明

一级方程式赛车MCP服务器

一个全面的一级方程式MCP服务器 蒲海 通过WhatsApp提供对所有Jolpica F1 API端点的访问。使用 Jolpica F1 API (与Ergast兼容)提供完整的F1数据覆盖,包括赛季、赛道、比赛、车队、车手、成绩、冲刺、排位赛、进站、圈数、积分榜和状态信息。

完成Jolpica F1 API集成

核心功能(Jolpica F1 API)

  • 下一场比赛信息:获取即将到来的比赛详细信息,包括日期、时间和地点
  • 驾驶员看台:当前F1锦标赛积分和获胜情况
  • 施工人员展台:团体冠军排名和积分
  • 比赛时间表:包含所有比赛日期的完整赛季日历
  • 比赛结果:最新比赛结果和终点位置
  • 历史数据:访问所有过去的赛季和比赛数据
  • F1小常识:随机F1事实、统计数据和有趣信息
  • 四季:浏览完整的F1历史记录
  • 所有电路:F1赛道和场馆数据库
  • 当前驱动程序:本赛季完整的车手阵容
  • 当前建筑商:完整的团队阵容
  • Sprint结果:短跑比赛结果和分析
  • 进站数据:详细的停站分析和时间安排
  • 圈数:逐圈计时分析
  • 合格结果:完成资格赛成绩
  • 驾驶员档案:综合职业统计
  • 车手赛季表现:详细的季节细分
  • 种族分析:完成比赛周末报告
  • 驾驶员比较:头对头统计比较
  • 状态代码:F1结果状态分类

快速开始

1.安装依赖项

# Navigate to project directory
cd f1_mcp_server

# Install Python dependencies
pip install -r requirements.txt

2.配置环境

# Create .env file with your details:
# AUTH_TOKEN=your_secret_mcp_auth_token
# MY_NUMBER=919876543210

3.运行服务器

# Run with new modular structure (recommended)
python main.py

# Or run original single file (still works)
python f1_mcp_server.py

4.与ngrok公开

# In another terminal
ngrok http 8088

5.连接Puch AI

/mcp connect https://your-domain.ngrok.app/mcp your_auth_token

WhatsApp使用指南

一旦您的F1 MCP服务器连接到puch.ai,您就可以使用以下WhatsApp命令:

F1基本信息

  • “下一场F1比赛是什么时候?”
  • “2025年F1车手排名”
  • “F1车队排名”
  • “F1 2025日历”
  • “最新F1比赛结果”
  • “告诉我F1琐事”

高级查询

  • “显示所有F1赛道”
  • “F1赛季历史”
  • “当前F1车手”
  • “当前F1车队”
  • “Sprint比赛结果”
  • “止点分析”
  • “合格结果”
  • “F1状态代码”

驱动因素分析

  • 刘易斯·汉密尔顿简介
  • “Verstappen 2023赛季表现”
  • “比较汉密尔顿与Verstappen”

历史数据

  • “F1 2018比赛日程”
  • “2024年第五轮比赛分析”
  • “摩纳哥2023年资格赛”

API文档

可用的MCP工具(20个F1工具+2个服务器工具=总共22个)

F1基本信息工具

  1. 验证 -确认MCP服务器连接
  2. get_ext_race -下一场F1比赛详情
  3. get_current积分榜 -当前车手锦标赛排名
  4. get_constructor_standings -当前球队冠军榜
  5. get_race_schedule -本赛季完整的比赛日历
  6. get_latest_race_results -最新比赛成绩和位置
  7. f1_琐事 -随机F1事实和琐事

综合数据工具

  1. 获取所有原因 -数据库中的所有F1赛季/年份
  2. get_all_电路 -曾经使用过的所有F1赛道
  3. get_current驱动程序 -本赛季所有车手
  4. get_current构造函数 -所有本赛季球队
  5. get_print_results -Sprint比赛结果
  6. get_pitstops -停坑数据和分析
  7. get_lap_times -圈速分析
  8. get_qualifying_results -资格赛结果
  9. get_status_codes -F1结果状态分类

高级分析工具

  1. 获取历史日程 -历史季节日历
  2. get_driver_file -全面的驾驶员职业概况
  3. get_driver_season_performance -详细的季节细分
  4. get_race_analysis -完成比赛周末分析
  5. 比较驱动程序 -直接与直接驾驶员比较
  6. 关于 -获取F1服务器信息

支持Jolpica F1 API端点

所有可用路线

  • 季节 - /seasons -所有F1赛季
  • 电路 - /circuits -所有F1赛道
  • 种族 - /2025/races -比赛日程
  • 建造者 - /2025/constructors -团队信息
  • 驱动程序 - /2025/drivers -驾驶员信息
  • 结果 - /2025/results -比赛结果
  • 冲刺 - /2025/sprint -Sprint结果
  • 资格赛的 - /2025/qualifying -合格结果
  • 止动器 - /2025/1/pitstops -停坑数据
  • 圈数 - /2025/1/laps -圈计时数据
  • 驾驶员停车场 - /2025/driverstandings -车手冠军
  • 建筑工地 - /2025/constructorstandings -团体冠军
  • 状态 - /status -结果状态代码

API功能

  • 免费使用 -无需身份验证
  • Ergast兼容 -熟悉的API结构
  • 全面的 -当前和历史F1数据
  • 可靠的 -社区维护的F1数据源
  • 实时更新 -当前季节数据

配置

环境变量

  • AUTH_TOKEN:puch.ai的MCP身份验证令牌
  • MY_NUMBER:您的WhatsApp号码,格式为919876543210
  • MCP_SERVER_HOST:服务器主机(默认值:0.0.0.0)
  • MCP_SERVER_PORT:服务器端口(默认值:8088)
  • JOLPICA_BASE_URL:Jolpica F1 API基本URL(默认值:https://api.jolpi.ca/ergast/f1)

项目结构

f1_mcp_server/
├── src/                     # Modular source code
│   ├── config.py           # Configuration and constants
│   ├── api_client.py       # Jolpica F1 API client
│   ├── auth.py             # Authentication provider
│   ├── server.py           # Main MCP server setup
│   └── tools/              # F1 tools organized by category
│       ├── basic_tools.py  # validate, about
│       ├── race_tools.py   # race info, schedule, results
│       ├── standings_tools.py # driver & constructor standings
│       ├── driver_tools.py # driver profiles & performance
│       ├── analysis_tools.py # race analysis & comparisons
│       ├── historical_tools.py # historical data
│       ├── data_tools.py   # circuits, drivers, constructors
│       ├── racing_tools.py # sprint, pitstops, lap times
│       ├── status_tools.py # status codes
│       └── trivia_tools.py # F1 trivia
├── tests/                   # Test files
│   └── test_tools.py       # Basic tests
├── main.py                  # Entry point (recommended)
├── f1_mcp_server.py        # Original single file (still works)
├── requirements.txt         # Dependencies
├── .env                     # Environment configuration
└── README.md               # This file

安全与隐私

  • 承载令牌身份验证 与蒲海
  • 无数据存储 -纯粹由API驱动的响应
  • 不收集个人数据 -仅F1公开信息
  • 安全的API调用 具有超时和错误处理功能

故障排除

常见问题

  1. “未找到种族数据”:

    • 检查F1赛季是否活跃
    • 验证Jolpica F1 API是否可访问
  2. “Jolpica F1 API错误”:

    • 检查互联网连接
    • 验证.env中的JOLPICA_BASE_URL
  3. 认证失败:

    • 验证.env中的AUTH_TOKEN
    • 检查puch.ai MCP连接

调试命令

# Test Jolpica F1 API directly
curl "https://api.jolpi.ca/ergast/f1/current.json"

# Check server logs
python main.py  # Watch console output (new structure)
# OR
python f1_mcp_server.py  # Original single file

准备比赛!

状态:完成-生产就绪的F1 MCP服务器,具有全面的Jolpica F1 API集成!

您的综合F1 MCP服务器现在可以访问Jolpica F1 API的所有端点,通过WhatsApp为您提供完整的F1数据覆盖,从现场冠军积分榜到详细的历史分析。随着 20个F1数据工具 (共22个,包括服务器工具)使用Ergas兼容的API,您可以获得最全面的F1数据访问!

新的模块化结构优势

✅ 清洁建筑 -分别关注配置、API客户端、身份验证和工具 ✅ 易于维护 -专用文件中的每个工具类别
✅ 更好的测试 -可靠性专用测试结构 ✅ 灵活部署 -选择 main.py (新)或 f1_mcp_server.py (原件) ✅ 可扩展设计 -易于添加新工具和功能

特性:实时比赛更新+锦标赛积分榜+车队积分榜+历史赛季+比赛结果+F1琐事+所有赛道+车手资料+赛季分析+资格赛结果+冲刺赛+进站+圈速+车手比较+状态代码


专为世界各地的F1粉丝打造!#BuildWithPuch