Camptocamp

io.github.olaurendeauPublished by GitHub account olaurendeauv1.4.0Updated Oct 25, 2026

API Camptocamp.org : itinéraires, sommets et points de passage, sorties, zones, livres et articles.

Overview

AI-generated overview

Read-only MCP server that lets an assistant look up Camptocamp.org mountain routes, summits, huts, trip reports, areas, guidebooks and articles.

What you can do
Search and read routes, with ratings, elevation, description and recent outings by ID or keyword, area, activity and grade filters. Search and read waypoints such as summits, huts, passes and crags, including altitude and GPS coordinates. Search and read trip reports, list a user's outings, fetch several outings at once and count outings by month, year or condition. Search and read areas, guidebooks and articles, with linked routes and waypoints. Every tool takes a language parameter for titles and texts.
When to use it
Useful when an assistant answers questions about alpine climbing and mountaineering and should cite real Camptocamp data instead of guessing altitudes, grades or conditions. Fits trip planning, route research and checking recent reports for a summit or hut.
Requirements
Runs locally over stdio, started by the MCP client. Either Node.js 22 or later with npx, or Docker. No account, API key or environment variable is needed. Network access to the public Camptocamp API is required, and the first start downloads the package or image.
Before you install
The tools are read-only and need no credentials. Data comes from a collaborative community site, so reports and grades reflect user submissions rather than verified ascents, and outing counts can be inflated by traverses or descent-only entries. Results should be cited with the camptocamp.org link the server returns.

Installation

In SourceWeft

  1. Open Camptocamp in the dashboard and add it to a workspace.
  2. Enable the server for the chats that should use its tools.

Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.

Other MCP clients

Follow the launch instructions in the repository.

README

mcp-camptocamp

An MCP server that lets an LLM look up mountain routes, summits, huts and trip reports on Camptocamp.org instead of guessing them.

[CI] [Contract] [npm version] [npm downloads] [MCP registry] [Node] [License] [GHCR]

What it does

Ask an LLM for the altitude of a summit or the rating of a ski tour and it may answer from memory, and get it wrong. This server gives it read-only access to Camptocamp.org, the collaborative mountaineering site: routes with their ratings and descriptions, summits and huts with their altitudes, trip reports with the conditions people found, areas, guidebooks and articles. Every tool output comes from the public Camptocamp API, with the camptocamp.org link to cite, and a value Camptocamp does not have is left out, never guessed. It needs no account and no API key.

An example conversation from October 2026, run against the published server (v1.3.0); the answer's table is cut to its first 5 rows:

Prompt: Give me the top 10 of most climbed routes on l'aiguille verte. With a very concise response

Called camptocamp 20 times

Top 10 routes on the Aiguille Verte, ranked by the number of camptocamp outings logged since the site began:

#RouteGradeOutings
1Couloir WhymperAD+241
2Couloir CouturierD92
3Arête du JardinD-33*
4Arête des Grands MontetsD24
5Arête du MoineAD+22*
…5 more rows

* Two counts are inflated. The Arête du Jardin figure includes traverses that stop at the Aiguille du Jardin without reaching the Verte. The Arête du Moine figure includes outings where it was only the descent route.

These are camptocamp reports, not actual ascents.

Quick start

The server runs on your machine, started by your MCP client over stdio. Run it with npx, which needs Node.js 22 or later, or with Docker.

npx. Clients configured with an mcpServers JSON object, such as Claude Desktop (claude_desktop_config.json), Gemini CLI (settings.json) or Cursor (.cursor/mcp.json), take this entry:

json
{  "mcpServers": {    "camptocamp": {      "command": "npx",      "args": ["-y", "@olaurendeau/mcp-camptocamp"]    }  }}

In Claude Code, one command adds it for every project:

sh
claude mcp add --transport stdio --scope user camptocamp -- npx -y @olaurendeau/mcp-camptocamp

Docker. Use this entry instead; the image runs on amd64 and arm64:

json
{  "mcpServers": {    "camptocamp": {      "command": "docker",      "args": ["run", "--rm", "-i", "ghcr.io/olaurendeau/mcp-camptocamp:latest"]    }  }}

The first start downloads the package or the image, which can outlast a client's startup timeout. Getting started shows how to download it beforehand, a smoke test, and the Docker command for Claude Code; Troubleshooting helps when the server does not show up.

The server is listed in the official MCP registry as io.github.olaurendeau/mcp-camptocamp.

Supported clients

ClientWorks?Setup
Claude DesktopYesClaude Desktop
Claude CodeYesClaude Code
ChatGPT desktop app, Codex CLI and Codex IDE extensionYesChatGPT desktop app and Codex
Mistral Vibe Code CLI and VS Code extensionYesMistral Vibe Code
Gemini CLI, Gemini Code AssistYes: CLI in a trusted folder, Code Assist in agent modeGemini CLI and Gemini Code Assist
Your own agent: OpenAI Agents SDK, Mistral Python SDK, google-genaiYesAgent SDKs
Cursor and other clients that start a local commandYesGetting started
Claude.ai custom connectors, Vibe WorkWith an instance you host over HTTP (v1.4.0 or later)Self-hosting over HTTP
ChatGPT on the web, Gemini APINo: remote servers onlyRemote-only clients

The support matrix lists the clients covered by the client pages and the agent SDK guide, with the date each page was last checked against the vendor's docs.

Tools

15 read-only tools: one search and one detail tool per kind of Camptocamp document, a shortcut for a user's outings, get_outings, to read several outings in one call, and outing_stats, to count outings by month, year or condition (these two from v1.4.0). Search results give IDs; the get_* tools take an ID. Every tool takes lang, the language of titles and texts (fr by default; v1.3.0 or later).

ToolWhat it does
search_routesSearch routes by keyword, area, waypoint, activity, rating, elevation gain, route type or configuration; paged.
get_routeOne route by ID: ratings, elevation, practical facts, description, areas, books, waypoints and recent outings.
search_waypointsSearch summits, huts, passes, crags and other waypoints by name and/or area, optionally by type; paged.
get_waypointOne waypoint by ID: altitude, GPS coordinates, hut details, access, areas, routes, books and outings.
search_outingsSearch trip reports by keyword, area, activity, ratings, conditions, elevation, dates, routes, waypoint or user.
search_user_outingsThe outings a Camptocamp user is listed on, by user ID; an alias of search_outings.
get_outingOne outing by ID: reported ratings and conditions, weather, report text, participants and routes.
get_outingsUp to 10 outings by ID in get_outing format (from v1.4.0); sections cut at 2,000, up to 8,000 (not in v1.4.0).
outing_statsCount search_outings matches by start month, year, condition (from v1.4.0), two of them or per route (not in v1.4.0)
search_areasSearch ranges, administrative subdivisions and countries by name; the ID is reusable as area_id.
get_areaOne area by ID: type, summary and description.
search_booksSearch guidebooks and other books by title, book type and activity; author and ISBN searches are unreliable.
get_bookOne book by ID: author, editor, date, ISBN, languages, waypoints, articles; 50 routes/call (not in v1.4.0).
search_articlesSearch articles (gear, technique, environment, stories) by keyword; by category, type and activity from v1.4.0.
get_articleOne article by ID: text, author, type, and the routes, waypoints, articles, outings and books linked to it.

Each tool page gives its inputs, generated from the registered schema, its output format, a real example and its limits: see the tool reference.

Guides

  • Using the tools with an LLM: which tools to chain for a region, a summit altitude, a hut, recent conditions or guidebooks; what each output line means; and a real June ski-tour example.
  • System prompt: a prompt to paste into your agent, so the model quotes Camptocamp, cites it and says when a value is missing.
  • Self-hosting over HTTP: host an instance behind a secret token for clients that only take a URL, such as Claude.ai and Vibe Work (v1.4.0 or later).
  • Documentation index: every page, by topic.

Development

Everything runs in Docker, through the Makefile: no local Node.js is needed. make check runs the same steps as the CI checks job: format, lint, type check, tests with enforced coverage thresholds (95 % of lines, functions and statements, 90 % of branches), build and hook tests. Every change lands through a reviewed pull request: see CONTRIBUTING.md (in French), and Development for the make targets, the live API contract tests, releases and the stack.

License

MIT

Source: README.md at commit 7f686b7

Tools

0
SourceWeft has not started this package in its sandbox yet, so its tools are not known.

Version history

5
  1. v1.4.0LatestOct 5, 2026
  2. v1.3.0Oct 4, 2026
  3. v1.2.0Oct 4, 2026
  4. v1.1.0Oct 3, 2026
  5. v1.0.3Sep 16, 2026

Score

50% of the applicable checks met

How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.

  • Reached in the last 30 days25 pts

    Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.

  • Auth declared10 pts

    Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.

  • Tools listed15 pts

    Answer tools/list without a credential, or ship a package that starts in a sandbox without one.

  • DescriptionRequired15 pts
  • Logo10 pts
  • Documentation15 pts
  • License10 pts