mcp-camptocamp
Serveur MCP (Model Context Protocol) exposant l'API Camptocamp.org aux LLMs. Permet d'interroger des données fiables et à jour sur les itinéraires alpins, les altitudes de sommets et les descriptions de courses — en évitant les hallucinations sur les données d'alpinisme.
Outils disponibles
| Outil | Description |
|---|---|
search_routes | Recherche des itinéraires par mot-clé (retourne ID, titre, activités, altitude, cotation) |
get_route | Détail complet d'un itinéraire par ID (description, cotations, dénivelé, matériel) |
search_waypoints | Recherche des points de passage par nom (sommets, refuges, bivouacs…) |
get_waypoint | Détail d'un point de passage par ID (altitude, coordonnées GPS, description) |
Installation
npm (recommandé)
Prérequis : Node.js 18+
Claude Desktop — ajouter dans la configuration :
{
"mcpServers": {
"camptocamp": {
"command": "npx",
"args": ["-y", "@olaurendeau/mcp-camptocamp"]
}
}
}
Cursor — ajouter dans ~/.cursor/mcp.json ou .cursor/mcp.json :
{
"mcpServers": {
"camptocamp": {
"command": "npx",
"args": ["-y", "@olaurendeau/mcp-camptocamp"]
}
}
}
Docker
Prérequis : Docker
{
"mcpServers": {
"camptocamp": {
"command": "docker",
"args": ["run", "--rm", "-i", "ghcr.io/olaurendeau/mcp-camptocamp:latest"]
}
}
}
Pour construire l'image localement :
docker compose build mcp
Puis utiliser l'image locale mcp-camptocamp-mcp à la place de ghcr.io/olaurendeau/mcp-camptocamp:latest.
Développement
Prérequis : Docker et Docker Compose
Toutes les commandes npm passent par Docker via le Makefile :
make install # Installer les dépendances
make test # Lancer les tests
make lint # Vérification des types
make test-watch # Tests en mode watch
make build # Compiler TypeScript
make docker-build # Construire l'image de production
make help # Liste toutes les commandes
Publication
La publication est automatisée via GitHub Actions à chaque tag v* (ex. v1.0.1).
Première publication
Étape 1 — Publier une première fois manuellement (une seule fois, avec ta 2FA) :
make login # authentification interactive avec 2FA
make publish # ci + tests + build + npm publish
Les identifiants npm sont stockés localement dans .npm/ (ignoré par git).
Étape 2 — Configurer Trusted Publishing sur npm (remplace le token CI/CD) :
- Va sur npmjs.com → ton package
@olaurendeau/mcp-camptocamp→ Settings - Section Trusted Publisher → choisis GitHub Actions
- Renseigne exactement :
- Organization or user :
olaurendeau - Repository :
mcp-camptocamp - Workflow filename :
publish.yml
- Organization or user :
- (Recommandé) Dans Publishing access, active Require two-factor authentication and disallow tokens
Étape 3 — Publier via GitHub Actions :
git tag v1.0.0
git push origin v1.0.0
Le workflow publie automatiquement sur npm (via OIDC, sans token), GHCR et le registre MCP officiel.
Après le premier push Docker, rendre le package GHCR public : Settings → Packages → mcp-camptocamp → Change visibility.
Publication manuelle
make publish
# Registre MCP (nécessite mcp-publisher installé sur l'hôte)
curl -L "https://github.com/modelcontextprotocol/registry/releases/latest/download/mcp-publisher_$(uname -s | tr '[:upper:]' '[:lower:]')_$(uname -m | sed 's/x86_64/amd64/;s/aarch64/arm64/').tar.gz" | tar xz mcp-publisher
./mcp-publisher login github
./mcp-publisher publish
Stack technique
- Runtime : Node.js 22 + TypeScript
- MCP SDK :
@modelcontextprotocol/sdk - Transport : stdio
- Tests : Vitest
- Docker : image multi-stage (
node:22-alpine)
Licence
MIT