Démarrage rapide
Prérequis
Configurer un client MCP — la voie rapide
La méthode la plus simple consiste à laisser le client MCP lancer le serveur lui-même via npx directement depuis GitHub, en stdio. Pas de clone, pas de npm install, pas de build manuel : npm s'en charge.
{
"mcpServers": {
"risques-majeurs": {
"command": "npx",
"args": ["-y", "github:MAIF/risques-majeurs-mcp", "--stdio"]
}
}
}
Pour Claude Code :
claude mcp add risques-majeurs -- npx -y github:MAIF/risques-majeurs-mcp --stdio
Au premier lancement, npx clone le repo, installé les dépendances et exécute le build (tsc + vite) — comptez quelques secondes. Les appels suivants réutilisent le cache de npx, donc le démarrage est instantané.
C'est le mode recommandé pour la plupart des utilisateurs. Si vous voulez modifier le code ou développer sur le projet, suivez plutôt le parcours ci-dessous.
Installation locale (pour développement)
Récupérer le code
git clone https://github.com/MAIF/risques-majeurs-mcp.git
cd risques-majeurs-mcp
Installer et builder
npm install
Ou avec mise :
mise run install
Le script prepare déclenche automatiquement un build après npm install. Le projet est donc prêt à l'emploi sans étape supplémentaire.
Configurer le client en stdio (chemin local)
{
"mcpServers": {
"risques-majeurs": {
"command": "node",
"args": ["/chemin/absolu/vers/risques-majeurs-mcp/dist/index.js", "--stdio"]
}
}
}
Configurer le client en HTTP (avec hot-reload)
Lancez le serveur :
npm run start-dev # dev avec hot-reload
# ou
npm start # production
Le serveur écoute sur http://localhost:3000/mcp. Configurez ensuite le client :
{
"mcpServers": {
"risques-majeurs": {
"url": "http://localhost:3000/mcp"
}
}
}
Pour Claude Code :
claude mcp add risques-majeurs http://localhost:3000/mcp --transport http
Plus de détails
La page Connecter un client IA détaille la configuration pour chaque plateforme : Claude Desktop, Claude Code, ChatGPT, Codex CLI, Mistral Le Chat, Gemini CLI, Cursor, Cline, Continue, Zed…
Vérifier que ça fonctionne
Une fois connecté, votre assistant IA devrait avoir accès à 4 nouveaux outils :
- geocodage — Géocoder une adresse
- liste_risques — Lister les risques disponibles
- exposition_risques — Évaluer l'exposition aux risques
- carte_exposition_risques — Afficher une carte des risques
Essayez par exemple de demander à votre assistant :
"Quels sont les risques majeurs au 1 place de la Comédie à Montpellier ?"
Variable d'environnement
| Variable | Description | Défaut |
|---|---|---|
PORT | Port d'écoute du serveur HTTP | 3000 |
NODE_ENV | development pour écouter sur 127.0.0.1, sinon 0.0.0.0 | — |
CORS_ORIGIN | Origine autorisée pour les requêtes CORS | * |
RATE_LIMIT_WINDOW_MS | Fenêtre de temps du rate limiting (en ms) | 60000 |
RATE_LIMIT_MAX | Nombre max de requêtes par fenêtre par IP | 100 |
TRUST_PROXY | Configure Express trust proxy (true, false, un nombre de sauts, loopback, une IP ou un CIDR). Nécessaire derrière un reverse-proxy (nginx, ngrok, Cloudflare…) pour que le rate-limit identifie correctement l'IP client | — |
API_V2_TOKEN | Jeton d'authentification Géorisques (si configuré, les endpoints V2 sont utilisés) | — |