关于 Camptocamp
Camptocamp 是面向登山与户外活动的 MCP 服务,让 LLM 查询 Camptocamp.org 的公开资料。它提供只读 API 数据,并省略缺失值而非猜测。
主要功能
- 01搜索路线并查看难度与描述
- 02查询山峰、山屋和海拔
- 03检索活动报告及近期状况
- 04查找区域、指南书和文章
适用场景
- 01核实山峰海拔或路线评级
- 02了解路线近期活动条件
- 03按区域查找登山路线
- 04查询相关指南书与文章
MCP 相关
该 MCP 服务将 Camptocamp.org 公共 API 的登山资料以只读工具形式提供给 MCP 客户端。工具结果附带可引用的 Camptocamp.org 链接。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
15收录的工具列表 · 更新于 2 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| lang | enum | 否 | 标题和文本的语言,可选值:fr、en、de、it、es、ca、eu、sl、zh(默认 fr)fr | en | de | it | es | ca | eu | sl | zh |
| limit | integer | 否 | 最大结果数 |
| query | string | 否 | 路线搜索查询(例如 'Mont Blanc voie normale')。仅匹配路线名称('<summit> : <route title>'),不匹配描述 |
| offset | integer | 否 | 要跳过的结果数,用于翻页(offset + limit ≤ 10,000) |
| area_id | integer | 否 | 来自 search_areas 的 Camptocamp 区域 ID(例如,Écrins 的 14403) |
| activity | enum | 否 | 活动,可选值:skitouring、snow_ice_mixed、mountain_climbing、rock_climbing、ice_climbing、hiking、snowshoeing、paragliding、mountain_biking、via_ferrata、slackliningskitouring | snow_ice_mixed | mountain_climbing | rock_climbing | ice_climbing | hiking | snowshoeing | paragliding | mountain_biking | via_ferrata | slacklining |
| rating_max | string | 否 | 要包含的最高难度等级,取自 rating_system 的等级范围(例如,global_rating 使用 'AD') |
| rating_min | string | 否 | 要包含的最低难度等级,取自 rating_system 的等级范围(例如,ski_rating 使用 '3.1') |
| route_types | array | 否 | 路线类型,匹配以下任意值:return_same_way、loop、loop_hut、traverse、raid、expedition |
| waypoint_id | integer | 否 | 来自 search_waypoints 的 Camptocamp waypoint ID:与此山峰、山屋、岩场等相关的路线(例如,Mont Pourri 的 37916) |
| configuration | array | 否 | 地形配置,匹配以下任意值:edge、pillar、face、corridor、goulotte、glacier(edge = arête/山脊)。标注并不完整:没有配置的路线会被排除,部分山脊会标记为 pillar 或 glacier。搜索山脊时,也可使用 query:'arête',它仅匹配名称,因此也会列出名称中包含 'arête' 的山峰路线 |
| rating_system | enum | 否 | 用于筛选的评级系统,可与 rating_min 和/或 rating_max 搭配使用(包含边界,每次调用限一种系统;ski_rating 是 Toponeige 滑雪评级)。各系统的有效值按从低到高排列:ski_rating:1.1、1.2、1.3、2.1、2.2、2.3、3.1、3.2、3.3、4.1、4.2、4.3、5.1、5.2、5.3、5.4、5.5、5.6;ski_exposition:E1、E2、E3、E4;labande_ski_rating:S1、S2、S3、S4、S5、S6、S7;labande_global_rating:F、F+、PD-、PD、PD+、AD-、AD、AD+、D-、D、D+、TD-、TD、TD+、ED-、ED、ED+、ED4、ED5、ED6、ED7;global_rating:F、F+、PD-、PD、PD+、AD-、AD、AD+、D-、D、D+、TD-、TD、TD+、ED-、ED、ED+、ED4、ED5、ED6、ED7;engagement_rating:I、II、III、IV、V、VI;risk_rating:X1、X2、X3、X4、X5;equipment_rating:P1、P1+、P2、P2+、P3、P3+、P4、P4+;rock_free_rating:2、3a、3b、3c、4a、4b、4c、5a、5a+、5b、5b+、5c、5c+、6a、6a+、6b、6b+、6c、6c+、7a、7a+、7b、7b+、7c、7c+、8a、8a+、8b、8b+、8c、8c+、9a、9a+、9b、9b+、9c、9c+;rock_required_rating:2、3a、3b、3c、4a、4b、4c、5a、5a+、5b、5b+、5c、5c+、6a、6a+、6b、6b+、6c、6c+、7a、7a+、7b、7b+、7c、7c+、8a、8a+、8b、8b+、8c、8c+、9a、9a+、9b、9b+、9c、9c+;exposition_rock_rating:E1、E2、E3、E4、E5、E6;aid_rating:A0、A0+、A1、A1+、A2、A2+、A3、A3+、A4、A4+、A5、A5+;ice_rating:1、2、3、3+、4、4+、5、5+、6、6+、7、7+;mixed_rating:M1、M2、M3、M3+、M4、M4+、M5、M5+、M6、M6+、M7、M7+、M8、M8+、M9、M9+、M10、M10+、M11、M11+、M12、M12+;via_ferrata_rating:K1、K2、K3、K4、K5、K6;hiking_rating:T1、T2、T3、T4、T5;hiking_mtb_exposition:E1、E2、E3、E4;snowshoe_rating:R1、R2、R3、R4、R5;mtb_up_rating:M1、M2、M3、M4、M5;mtb_down_rating:V1、V2、V3、V4、V5。所选评级没有值的路线会被排除。ski_rating | ski_exposition | labande_ski_rating | labande_global_rating | global_rating | engagement_rating | risk_rating | equipment_rating | rock_free_rating | rock_required_rating | exposition_rock_rating | aid_rating | ice_rating | mixed_rating | via_ferrata_rating | hiking_rating | hiking_mtb_exposition | snowshoe_rating | mtb_up_rating | mtb_down_rating |
| height_diff_up_max | integer | 否 | 海拔增益最高值(米),包含该值(不包括没有海拔增益的路线) |
| height_diff_up_min | integer | 否 | 海拔增益最低值(米),包含该值(不包括没有海拔增益的路线) |
详细介绍
mcp-camptocamp
一个 MCP 服务,让大模型可以在 Camptocamp.org 上查询山地路线、山峰、山屋和行程报告,而不是凭空猜测。
功能介绍
询问大模型某座山峰的海拔或某条滑雪线路的评级时,它可能会凭记忆回答,而且答错。这个服务提供对 Camptocamp.org(协作式登山网站)的只读访问:包括带评级和描述的路线、标注海拔的山峰和山屋、记录人们所遇状况的行程报告,以及区域、指南和文章。每个工具的输出都来自 Camptocamp 公共 API,并附有可供引用的 camptocamp.org 链接;Camptocamp 没有的数据会省略,绝不会猜测。无需账号或 API 密钥。
以下是 2026 年 10 月的一段对话示例,使用已发布的服务(v1.3.0)运行;答案表格仅显示前 5 行:
**提示词:**列出 l'aiguille verte 上攀登次数最多的前 10 条路线。回答尽量简洁
调用了 camptocamp 20 次
Aiguille Verte 上攀登次数最多的前 10 条路线,按网站上线以来记录的 camptocamp 行程数量排序:
# 路线 难度 行程数 1 Couloir Whymper AD+ 241 2 Couloir Couturier D 92 3 Arête du Jardin D- 33* 4 Arête des Grands Montets D 24 5 Arête du Moine AD+ 22* … 其余 5 行 * 两个数量都偏高。Arête du Jardin 的数据包含了止步于 Aiguille du Jardin、未抵达 Verte 的横越路线。Arête du Moine 的数据包含了仅将其作为下撤路线的行程。
这些是 camptocamp 报告,不代表实际登顶次数。
快速开始
该服务在你的计算机上运行,由 MCP 客户端通过 stdio 启动。可使用 npx 运行(需要 Node.js 22 或更高版本),也可使用 Docker。
npx。 配置了 mcpServers JSON 对象的客户端(例如 Claude Desktop(claude_desktop_config.json)、Gemini CLI(settings.json)或 Cursor(.cursor/mcp.json))可添加以下条目:
{
"mcpServers": {
"camptocamp": {
"command": "npx",
"args": ["-y", "@olaurendeau/mcp-camptocamp"]
}
}
}
在 Claude Code 中,只需运行一条命令,即可将其添加到每个项目:
claude mcp add --transport stdio --scope user camptocamp -- npx -y @olaurendeau/mcp-camptocamp
Docker。 改用以下条目;该镜像支持 amd64 和 arm64:
{
"mcpServers": {
"camptocamp": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/olaurendeau/mcp-camptocamp:latest"]
}
}
}
首次启动时会下载软件包或镜像,耗时可能超过客户端的启动超时限制。入门指南介绍了如何提前下载、执行冒烟测试,以及用于 Claude Code 的 Docker 命令;故障排除可帮助解决服务未显示的问题。
该服务已列入官方 MCP 注册表,名称为 io.github.olaurendeau/mcp-camptocamp。
支持的客户端
| 客户端 | 是否可用? | 设置 |
|---|---|---|
| Claude Desktop | 是 | Claude Desktop |
| Claude Code | 是 | Claude Code |
| ChatGPT 桌面应用、Codex CLI 和 Codex IDE 扩展 | 是 | ChatGPT 桌面应用和 Codex |
| Mistral Vibe Code CLI 和 VS Code 扩展 | 是 | Mistral Vibe Code |
| Gemini CLI、Gemini Code Assist | 是:CLI 可在受信任的文件夹中使用,Code Assist 可在 Agent 模式下使用 | Gemini CLI 和 Gemini Code Assist |
| 自定义 Agent:OpenAI Agents SDK、Mistral Python SDK、google-genai | 是 | Agent SDK |
| Cursor 和其他可启动本地命令的客户端 | 是 | 入门指南 |
| Claude.ai 自定义连接器、Vibe Work | 适用于通过 HTTP 托管的实例(v1.4.0 或更高版本) | 通过 HTTP 自托管 |
| ChatGPT 网页版、Gemini API | 否:仅支持远程服务 | 仅支持远程服务的客户端 |
支持矩阵列出了客户端页面和 Agent SDK 指南所涵盖的客户端,并注明了各页面最近一次根据供应商文档核对的日期。
工具
15 个只读工具:每种 Camptocamp 文档各有一个搜索工具和一个详情工具,还有一个用于快捷查看用户出行记录的 get_outings 工具,可在一次调用中读取多条出行记录;以及 outing_stats,用于按月份、年份或状况统计出行记录(这两个工具自 v1.4.0 起提供)。搜索结果会提供 ID;get_* 工具需要传入 ID。每个工具都接受 lang 参数,用于指定标题和文本的语言(默认为 fr;v1.3.0 起提供)。
| 工具 | 功能 |
|---|---|
search_routes | 按关键词、区域、路径点、活动、评级、爬升高度、路线类型或配置搜索路线;支持分页。 |
get_route | 按 ID 获取一条路线:评级、海拔、实用信息、描述、区域、书籍、路径点和近期出行记录。 |
search_waypoints | 按名称和/或区域搜索山峰、山屋、山口、攀岩场及其他路径点;可选按类型筛选;支持分页。 |
get_waypoint | 按 ID 获取一个路径点:海拔、GPS 坐标、山屋详情、抵达方式、区域、路线、书籍和出行记录。 |
search_outings | 按关键词、区域、活动、评级、状况、海拔、日期、路线、路径点或用户搜索出行报告。 |
search_user_outings | 按用户 ID 搜索列有某位 Camptocamp 用户的出行记录;是 search_outings 的别名。 |
get_outing | 按 ID 获取一条出行记录:报告的评级和状况、天气、报告文本、参与者和路线。 |
get_outings | 按 ID 获取最多 10 条出行记录,格式与 get_outing 相同(自 v1.4.0 起提供);各部分在 2,000 字符处截断,最多可至 8,000 字符(v1.4.0 中不可用)。 |
outing_stats | 按开始月份、年份、状况(自 v1.4.0 起提供)、其中两项或路线统计 search_outings 的匹配结果(v1.4.0 中不可用) |
search_areas | 按名称搜索山脉、行政区划和国家;返回的 ID 可用作 area_id。 |
get_area | 按 ID 获取一个区域:类型、摘要和描述。 |
search_books | 按标题、书籍类型和活动搜索指南及其他书籍;按作者和 ISBN 搜索的结果不可靠。 |
get_book | 按 ID 获取一本书:作者、编辑、日期、ISBN、语言、路径点、文章;每次调用最多返回 50 条路线(v1.4.0 中不可用)。 |
search_articles | 按关键词搜索文章(装备、技巧、环境、故事);自 v1.4.0 起可按类别、类型和活动搜索。 |
get_article | 按 ID 获取一篇文章:文本、作者、类型,以及与其关联的路线、路径点、文章、出行记录和书籍。 |
每个工具页面都列出了其输入(根据已注册的 schema 生成)、输出格式、实际示例和限制:请参阅工具参考。
指南
- 将工具与大模型配合使用:了解如何串联工具以查询地区、山顶海拔、小屋、近期状况或指南;每行输出的含义;以及一个真实的 6 月滑雪登山示例。
- 系统提示词:可粘贴到 Agent 中的提示词,让模型引用 Camptocamp、注明来源,并在缺少数值时明确说明。
- 通过 HTTP 自托管:在密钥令牌后托管一个实例,供只接受 URL 的客户端使用,例如 Claude.ai 和 Vibe Work(v1.4.0 或更高版本)。
- 文档索引:按主题列出所有页面。
开发
所有操作都通过 Makefile 在 Docker 中运行:无需本地安装 Node.js。make check 会运行与 CI checks 作业相同的步骤:格式检查、lint、类型检查、测试(覆盖率阈值要求:行、函数和语句覆盖率均为 95 %,分支覆盖率为 90 %)、构建和钩子测试。
每项变更都通过经过审查的拉取请求提交:请参阅 CONTRIBUTING.md(法语)和开发,了解 make 目标、实时 API 契约测试、发布和技术栈。
许可证
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。