firstcycling-mcp 是一个模型上下文协议(MCP)服务器,提供来自 FirstCycling 的职业自行车运动数据。它允许检索职业车手、赛事结果、赛事详情和历史骑行数据等综合信息。
用途 该 MCP 服务器提供丰富的职业自行车数据访问能力,通过以下工具实现:查找职业车手信息、检索赛事结果与详情、探索历史赛事数据、分析车手表现与职业生涯发展、获取自行车车队与赛事相关信息。
主要能力 服务器通过模型上下文协议暴露以下工具类别:车手信息、赛事信息。这些工具基于 FirstCycling API 实现,该 API 已直接集成到项目中,通过网页抓取(web scraping)方式从 FirstCycling 网站获取数据。
使用方式 环境要求:Python 3.10 或更高版本;推荐使用 uv 包管理器。依赖项列于 pyproject.toml 中,包括 mcp、beautifulsoup4、lxml、pandas、slumber 以及其他用于网页抓取和数据处理的包。
安装步骤:
- 克隆该仓库。
- 创建并激活虚拟环境:
uv venv
source .venv/bin/activate # macOS/Linux
或 .venv\Scripts\activate # Windows
- 安装依赖: uv pip install -e .
开发模式:可通过运行 MCP Inspector 测试服务器。该命令会启动服务器并在浏览器中打开 MCP Inspector,以便测试可用的工具。
集成到 Claude for Desktop: 编辑 Claude for Desktop 配置文件,位置为:
- macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
- Windows: %APPDATA%\Claude\claude_desktop_config.json
在配置中添加服务器: { "mcpServers": { "firstcycling": { "command": "uv", "args": [ "--directory", "/path/to/server/directory", "run", "firstcycling.py" ] } } } 然后重启 Claude for Desktop。
适用场景 该服务器可用于多种真实场景,例如使用 Claude 进行:
- 表现追踪:如“Tadej Pogačar 多年来在环法自行车赛中的表现如何?”
- 职业生涯发展:如“展示 Wout van Aert 的车队历史和职业生涯发展。”
- 专项分析:如“Mathieu van der Poel 在五大古典赛中的成绩如何?”
- 胜利分析:如“列出 Jonas Vingegaard 的所有 WorldTour 胜利。”
- 历史对比:如“比较 Primož Roglič 和 Jonas Vingegaard 的大环赛成绩。”
- 近期结果:如“展示 2023 巴黎-鲁贝的结果。”
- 历史背景:如“环弗兰德斯最年轻和最年长的冠军是谁?”
- 车队分析:如“获取 2023 环法自行车赛的出发名单及详细车队信息。”
- 赛事统计:如“展示列日-巴斯通-列日的胜利表。谁夺冠次数最多?”
- 赛段信息:如“能否展示 2023 环意自行车赛的赛段剖面图?” 此外还可用于体育新闻写作,如“为自行车杂志文章创建 Remco Evenepoel 的详细资料”、“根据 Tadej Pogačar 和 Jonas Vingegaard 等顶尖竞争者的近期成绩撰写即将到来的环法前瞻”、“基于比赛成绩和车队历史分析 Tom Pidcock 的职业生涯演变”;以及自行车运动教育,如“利用历史与冠军数据解释五大古典赛的特别之处”、“创建关于大环赛及其在职业自行车运动中意义的教育性总结”、“利用数据中的例子描述职业自行车手的典型职业发展路径”。
限制 资料中未提供关于该工具的收费、价格、平台兼容性细节、数据更新频率或使用配额等方面的明确说明,这些信息暂未提供。