Parlez a vos données GSE-Web
en langage naturel
Le serveur MCP GSE-Web connecté les assistants IA (Claude, ChatGPT, etc.) directement a votre application de gestion de stock. Posez des questions, lancez des actions, obtenez des rapports — sans ecrire une seule ligne de code.
Qu'est-ce que MCP ?
MCP (Model Context Protocol) est un standard ouvert cree par Anthropic qui permet a une IA de se connectér a des sources de données externes de manière sécurisée et structurée.
Pensez-y comme un traducteur universel : l'IA parle en langage naturel, le serveur MCP traduit en requêtes techniques (API, SQL), et renvoie les résultats dans un format que l'IA comprend.
Pourquoi utiliser le serveur MCP ?
Questions en langage naturel
Plus besoin de naviguer dans des menus ou de savoir ecrire du SQL. Posez vos questions comme vous parleriez a un collegue.
Réponses instantanées
L'IA analyse les données et synthetise les résultats. Un tableau de bord complet en une phrase.
Sécurité préservée
Memes regles que l'application : authentification JWT, permissions par role (30 droits), isolation par organisation.
Actions automatisées
Créez des entrées/sorties de stock, changez des statuts de bons de mouvement — directement depuis la conversation.
Analyses intelligentes
Alertes rupture, produits périmés, statistiques — l'IA croise les données et vous alerte proactivement.
Module formation
Les enseignants peuvent suivre les classes, scenarios et la progression des eleves par simple question.
Avant / Apres
Sans MCP
- Ouvrir l'application GSE-Web
- Naviguer dans les menus
- Appliquer des filtres manuellement
- Exporter en CSV, ouvrir Excel
- Croiser les données a la main
- Ecrire un rapport
Avec MCP
- "Quels produits ont un stock < 5 dans le magasin Central ?"
- L'IA repond en 3 secondes avec un tableau
- "Compare les sorties de janvier et fevrier"
- L'IA génère l'analyse directement
- "Créeune entrée de 50 unites pour le produit REF-2024"
- Action effectuee, confirmation instantanée
Comment ca fonctionne ?
Le serveur MCP tourne en local sur votre machine (Node.js). Il ne stocke aucune donnee. A chaque requête, il s'authentifie aupres de GSE-Web avec vos identifiants, puis interroge les APIs existantes de l'application.
stdio (entrée/sortie standard) et avec GSE-Web via HTTPS. Pas de serveur web local a exposer.
Prérequis
| Élément | Requis | Note |
|---|---|---|
Node.js | v18 ou supérieur | nodejs.org |
npm | Inclus avec Node.js | - |
Claude Code | CLI Anthropic | npm install -g @anthropic-ai/claude-code |
| Compte GSE-Web | Identifiants valides | Meme login que l'application mobile/web |
| Connexion internet | Oui | Pour atteindre les APIs GSE-Web |
Installation pas a pas
Compiler le serveur MCP
Ouvrez un terminal dans le dossier du projet GSE-Web et exécutez :
cd mcp-server npm install npm run build
Le résultat compile se trouve dans mcp-server/dist/.
Vérifier le fichier .mcp.json
A la racine du projet, un fichier .mcp.json est deja configure :
{
"mcpServers": {
"gse-web": {
"command": "node",
"args": ["dist/index.js"],
"cwd": "/chemin/vers/gse_web_mobile_v2/mcp-server",
"env": {
"GSE_PROXY_BASE_URL": "https://gse-web-dev.xlexe.com",
"GSE_DEFAULT_SERVER": "https://dev.gse-web.online/"
}
}
}
}
cwd au chemin reel du dossier mcp-server sur votre machine.
Pour la production, remplacez les URLs par https://gse-web.xlexe.com et https://www.gse-web.online/.
Lancer Claude Code
Depuis la racine du projet :
claude
Claude Code detecte automatiquement .mcp.json et vous propose d'activer le serveur gse-web. Acceptez.
S'authentifier
Dans la conversation Claude, tapez simplement :
Connecte-moi au serveur de développement GSE-Web avec l'identifiant "mon_login" et le mot de passe "mon_password"
Claude appellera l'outil authenticate et confirmera votre connexion avec la liste de vos droits.
Premier usage : exemples concrets
Une fois authentifie, posez vos questions en francais. Voici des exemples :
"Cherche les produits contenant 'cable' dans la référence" "Donne-moi les details du produit n°142 avec son stock par emplacement" "Quelles sont les catégories de produits disponibles ?"
L'IA utilise search_products, get_product_details et get_catégories.
"Montre-moi le stock du magasin Central" "Quels emplacements existent dans mon organisation ?" "Y a-t-il des produits en rupture de stock ?"
L'IA utilise get_stock_levels, get_emplacements et get_stock_alerts.
"Liste les entrées de stock de cette semaine" "Montre-moi les bons de mouvement a traiter" "Affiche les details du bon de mouvement n°85"
L'IA utilise list_entrées, list_bon_mouvements et get_bon_mouvement_details.
"Créeune entrée de 50 unites du produit 142, emplacement A-03, magasin Central" "Sortie de 10 unites du produit 98 avec le commentaire 'Chantier Bordeaux'" "Passe le bon de mouvement 85 au statut 'termine'"
L'IA utilise create_entrée, create_sortie et update_bon_mouvement_statut.
Ces outils requierent des droits spécifiques (EDITER_ENTREE, EDITER_SORTIE, etc.).
"Donne-moi un résumé du tableau de bord : produits, stock, utilisateurs" "Y a-t-il des produits qui périmént dans les 30 jours ?" "Montre-moi les derniers logs d'erreur de l'application"
L'IA utilise get_dashboard_stats, get_stock_alerts et get_recent_logs.
"Liste mes classes de formation" "Quels scenarios pedagogiques sont disponibles ?" "Montre la progression des eleves sur le scenario 12"
L'IA utilise list_classes, list_scenarios et get_student_progress.
Requiert le droit FORMATION_ENSEIGNANT.
Claude Code (CLI) — Outil principal
Claude Code est l'interface en ligne de commande officielle d'Anthropic pour Claude. C'est l'outil recommandé pour utiliser le serveur MCP GSE-Web.
Installation
npm install -g @anthropic-ai/claude-code
Utilisation
# Depuis la racine du projet GSE-Web cd /chemin/vers/gse_web_mobile_v2 # Lancer Claude Code (detecte .mcp.json automatiquement) claude # Claude propose d'activer le serveur MCP "gse-web" → acceptez # Vous pouvez ensuite discuter normalement : > Connecte-moi au serveur dev avec login "admin" password "***" > Quels produits sont en rupture de stock ? > Créeune entrée de 20 unites pour le produit 45
Claude Desktop
L'application de bureau Claude Desktop (Mac/Windows) supporte aussi les serveurs MCP.
Configuration
Editez le fichier de configuration Claude Desktop :
# macOS ~/Library/Application Support/Claude/claude_desktop_config.json # Windows %APPDATA%\Claude\claude_desktop_config.json
Ajoutez la section mcpServers :
{
"mcpServers": {
"gse-web": {
"command": "node",
"args": ["/chemin/vers/mcp-server/dist/index.js"],
"env": {
"GSE_PROXY_BASE_URL": "https://gse-web-dev.xlexe.com",
"GSE_DEFAULT_SERVER": "https://dev.gse-web.online/"
}
}
}
}
Redémarrez Claude Desktop. Le serveur apparait dans la liste des outils disponibles.
Claude.ai — Intégration directe (recommandé)
Votre abonnement Claude Pro, Max ou Team inclut la possibilité de connectér des serveurs MCP distants. Le serveur GSE-Web est hébergé sur nos serveurs — vous n'avez qu'a ajouter une URL dans vos paramètres Claude. Ensuite, Claude comprend toutes vos questions en langage naturel et interroge vos données en temps reel.
IA complete
Claude (Opus, Sonnet, Haiku) comprend le langage naturel. Pas de mots-clés a retenir, posez vos questions comme vous les diriez a un collegue.
Inclus dans votre forfait
Aucun cout supplémentaire. L'intégration MCP utilise votre abonnement Claude existant (Pro, Max ou Team).
Zero installation
Tout fonctionne dans le navigateur. Rien a télécharger, rien a configurer sur votre machine.
Securise
Authentification par vos identifiants GSE-Web. Isolation stricte par organisation. Aucune donnee n'est stockée par le serveur MCP.
Lecture et écriture
Consultez vos stocks, mais aussi creez des entrées/sorties — avec vérification des droits a chaque action.
Analyses avancees
Claude peut croiser les données, comparer des périodes, génèrer des rapports — il a accès a 42 outils spécialisés.
Mise en place (une seule fois, 2 minutes)
Ouvrez les paramètres Claude
Allez sur claude.ai et cliquez sur l'icone engrenage en bas a gauche pour ouvrir les Settings.
Ajoutez l'intégration MCP
Dans la section Intégrations, cliquez sur "Add intégration" (ou "Ajouter une intégration").
Entrez l'URL du serveur MCP :
| Environnement | URL a copier |
|---|---|
| Développement / Demo | https://gse-web-dev.xlexe.com/api/mcp_remote.php |
| Production | https://gse-web.xlexe.com/api/mcp_remote.php |
Validez. L'intégration apparait dans votre liste avec le nom "gse-web".
Ouvrez une conversation et authentifiez-vous
Dans une nouvelle conversation Claude, dites simplement :
Connecte-moi au serveur GSE-Web demo avec l'identifiant "mon_login" et le mot de passe "mon_password"
Claude appelle l'outil authenticate et confirme votre connexion avec la liste de vos droits.
Posez vos questions !
Vous etes connecté. Demandez ce que vous voulez en francais :
"Quels produits sont en rupture de stock ?" "Montre-moi le stock sur l'emplacement HALLIDAY" "Donne-moi le tableau de bord avec les chiffres clés" "Liste les entrées de la semaine dernière" "Créeune entrée de 50 gants isolants, emplacement A-03" "Compare les sorties de janvier et fevrier"
Ce que Claude peut faire avec vos données
- Rechercher des produits par référence, nom, catégorie ou code-barre
- Voir le detail d'un produit avec son stock par emplacement
- Lister le stock filtre par emplacement
- Consulter les catégories et emplacements disponibles
- Tableau de bord : nombre de produits, quantite totale, utilisateurs
- Alertes rupture de stock (produits a quantite 0)
- Alertes péremption (produits expirant dans 30 jours)
- Claude peut croiser et analyser les résultats de plusieurs outils pour repondre a des questions complexes
- Historique des entrées et sorties avec filtres par date
- Liste des bons de mouvement avec filtre par statut
- Créer des entrées de stock (droit EDITER_ENTREE requis)
- Créer des sorties de stock (droit EDITER_SORTIE requis)
Claude vous demandera toujours confirmation avant de créer une entrée ou une sortie.
- Liste des utilisateurs de l'organisation
- Consultation des droits et roles
Différence avec l'Assistant Web
Assistant Web (chat basique)
- Gratuit, sans abonnement
- Compréhension par mots-clés
- Boutons raccourcis pre-definis
- Pas d'analyse croisee
- Réponses formatees simples
Claude.ai (IA complete)
- Abonnement Claude requis (Pro/Max/Team)
- Compréhension langage naturel totale
- Questions complexes et suivi de contexte
- Analyse, comparaison, synthese des données
- Réponses détaillées avec explications
Questions fréquentes
Non. L'intégration MCP est incluse dans votre abonnement Claude (Pro a 20$/mois, Max a 100$/mois, Team a 30$/mois/utilisateur). Pas de frais supplémentaires cote GSE-Web.
Les données transitent entre le serveur MCP et Claude pour formuler les réponses. Anthropic ne stocke pas les données des outils MCP et ne les utilise pas pour entrainer ses modèles (politique de confidentialité Anthropic). La connexion est chiffrée en HTTPS de bout en bout.
Non. L'URL du serveur MCP permet uniquement de voir la liste des outils disponibles (noms génériques comme "search_products"). Pour acceder a la moindre donnee, il faut s'authentifier avec un vrai login et mot de passe GSE-Web. C'est le meme niveau de sécurité qu'une page de login.
Oui. Chaque membre de l'equipe ajoute l'URL dans ses propres paramètres Claude, puis se connecté avec ses propres identifiants GSE-Web. Chacun ne voit que les données de son organisation.
Oui, l'authentification GSE-Web est par conversation. Au debut de chaque nouvelle conversation, dites a Claude de vous connectér. L'intégration MCP elle-meme reste configurée en permanence dans vos paramètres.
ChatGPT Custom GPT (zero installation)
Un Custom GPT dans ChatGPT permet a n'importe quel utilisateur de discuter avec les données GSE-Web directement depuis chat.openai.com. Aucune installation requise.
Configuration par l'administrateur
Créer un Custom GPT
Dans ChatGPT, allez dans Explore GPTs → Create.
Ajouter les instructions
Collez ces instructions dans le champ "Instructions" du GPT :
Tu es l'assistant GSE-Web, un expert en gestion de stock. Tu aides les utilisateurs a interroger et gérer leurs données de stock, produits, mouvements et bons de mouvement. Regles : 1. Commence TOUJOURS par authentifier l'utilisateur (action authenticate) 2. Utilise le token recu pour toutes les requêtes suivantes 3. Reponds en francais, de manière claire et synthetique 4. Pour les tableaux de données, formate-les de manière lisible 5. Ne montre JAMAIS le token JWT a l'utilisateur 6. Pour les actions d'écriture, confirme AVANT d'executer
Configurer les Actions
Dans l'onglet Actions, importez le schema OpenAPI disponible a :
https://gse-web.xlexe.com/api/gse_assistant_openapi.json
L'authentification se fait via le header Authorization: Bearer gere automatiquement par le GPT apres login.
Publier le GPT
Choisissez "Only people with a link" ou "Anyone at [votre organisation]" pour partager avec votre equipe.
Utilisation par les employes
L'utilisateur ouvre simplement le lien du Custom GPT et discute normalement :
"Connecte-moi au serveur de production, login jean.dupont, mot de passe ***" "Quels produits sont en rupture ?" "Donne-moi le tableau de bord" "Créeune entrée de 50 gants, emplacement A-03"
Assistant Web (sans IA)
L'Assistant Web est une interface de consultation rapide avec boutons raccourcis et recherche par mots-clés. Il ne nécessite aucun abonnement IA mais n'utilise pas d'intelligence artificielle.
Documentation complete →
Guide d'utilisation, exemples par metier, exports CSV, sécurité et FAQ.
Ouvrir l'Assistant Web →
Accès direct a l'interface de chat (identifiants GSE-Web requis).
Autres outils compatibles
n8n — Automatisation →
Connectez GSE-Web à n8n pour créer des workflows automatiques : alertes stock, rapports, sync ERP. Guide complet disponible.
Cursor / Windsurf
IDE avec IA intégrée. Supportent le protocole MCP pour les développeurs.
Tout client MCP
Tout logiciel compatible MCP peut se connectér au serveur local gse-web.
Référence : 42 outils disponibles
Chaque outil est automatiquement accèssible a l'IA une fois le serveur MCP connecté. Vous n'avez jamais besoin de les appeler directement — posez votre question et l'IA choisit le bon outil.
Authentification
| Outil | Description | Accès |
|---|---|---|
authenticate |
Se connectér a un serveur GSE-Web avec login/mot de passe | Ouvert |
get_current_user |
Voir le profil et les droits de l'utilisateur connecté | JWT |
list_servers |
Informations sur le serveur de l'utilisateur connecté | JWT |
Produits & Stock (lecture)
| Outil | Description | Accès |
|---|---|---|
search_products |
Rechercher des produits par mot-cle (référence, libellé, catégorie) | JWT |
get_product_details |
Détails complets d'un produit avec stock par emplacement | JWT |
get_stock_levels |
Niveaux de stock avec filtres par magasin / emplacement | JWT |
get_emplacements |
Liste des emplacements de stockage | JWT |
get_catégories |
Catégories de produits distinctes | JWT |
Mouvements (lecture)
| Outil | Description | Accès |
|---|---|---|
list_entrées |
Entrées de stock avec filtres par date | JWT |
list_sorties |
Sorties de stock avec filtres par date | JWT |
list_bon_mouvements |
Bons de mouvement avec filtre par statut | JWT |
get_bon_mouvement_details |
Détails complets d'un bon de mouvement | JWT |
Operations d'écriture
| Outil | Description | Accès |
|---|---|---|
create_entrée |
Créer une entrée de stock (produit, quantité, emplacement, magasins_id, no_lot...) | EDITER_ENTREE |
create_sortie |
Créer une sortie de stock | EDITER_SORTIE |
update_bon_mouvement_statut |
Changer le statut d'un bon de mouvement | EDITER_STATUTS_BDM |
Utilisateurs & Organisation
| Outil | Description | Accès |
|---|---|---|
list_users |
Liste des utilisateurs de l'organisation | ADMIN |
get_user_details |
Détails d'un utilisateur avec groupes et droits | ADMIN |
get_organisation_info |
Informations sur l'organisation courante | JWT |
Analytique & Monitoring
| Outil | Description | Accès |
|---|---|---|
get_stock_alerts |
Alertes : ruptures de stock, produits périmés dans 30 jours | JWT |
get_dashboard_stats |
Statistiques clés : nb produits, quantite stock, nb utilisateurs | JWT |
get_recent_logs |
Derniers logs applicatifs avec filtre par niveau | SUPERADMIN |
Formation
| Outil | Description | Accès |
|---|---|---|
list_classes |
Classes de formation | FORMATION |
list_scenarios |
Scenarios pedagogiques (TP) | FORMATION |
get_student_progress |
Progression des eleves sur un scenario | FORMATION |
Bons de réception
| Outil | Description | Accès |
|---|---|---|
list_bons_reception |
Bons de réception avec % réception, filtres par date et fournisseur | JWT |
get_bon_reception_details |
Détails d'un bon de réception avec statut par ligne (reçu/partiel/en attente) | JWT |
Commandes clients (OMS)
| Outil | Description | Accès |
|---|---|---|
list_commandes_clients |
Commandes clients du portail OMS avec filtres par statut, date et client | JWT |
get_commande_client_details |
Détails complets d'une commande client avec lignes produits | JWT |
Logistique & Approvisionnement
| Outil | Description | Accès |
|---|---|---|
list_commandes_fournisseurs |
Commandes fournisseurs avec filtres par statut | JWT |
get_commande_fournisseur_details |
Détails commande avec lignes (qté commandée/reçue/restante) | JWT |
get_reception_status |
Statut réception : % réceptionné, lignes en attente | JWT |
list_expeditions |
Expéditions avec nombre de palettes et bons liés | JWT |
get_expedition_details |
Détails expédition avec bons liés et palettes | JWT |
get_bon_reliquats |
Bons reliquats (-R1, -R2) d'un bon partiellement préparé | JWT |
get_missing_quantities |
Quantités manquantes (demandées - sorties) par ligne | JWT |
list_ruptures |
Produits en rupture avec statut et fournisseur | JWT |
get_stock_history |
Historique entrées/sorties d'un produit sur une période | JWT |
list_magasins |
Magasins (entrepôts) de l'organisation | JWT |
Tiers (Fournisseurs & Clients)
| Outil | Description | Accès |
|---|---|---|
list_tiers |
Fournisseurs et clients avec filtres par type et recherche | JWT |
get_tiers_details |
Détails complets d'un tiers (30+ champs) | JWT |
Opérations stock avancées
| Outil | Description | Accès |
|---|---|---|
modify_stock |
Modifier la quantité d'un stock existant | EDITER_PRODUIT |
change_emplacement |
Changer l'emplacement d'un stock | EDITER_PRODUIT |
Référence : 3 ressources de contexte
Les ressources fournissent du contexte statique a l'IA pour mieux comprendre l'application GSE-Web.
| URI | Description |
|---|---|
gse://schema/tables |
Structure de la base de données GSE-Web (tables et relations principales) |
gse://permissions/list |
Les 32 droits disponibles avec leur description |
gse://docs/api |
Résumé des endpoints de l'API REST (produits, stocks, mouvements...) |
Sécurité
Le serveur MCP applique exactement les memes regles de sécurité que l'application GSE-Web :
🔑 Authentification JWT
Chaque session commence par une authentification. Le JWT est valide par le backend CakePHP a chaque requête.
👥 Isolation par organisation
Toutes les requêtes SQL incluent un filtre organisations_id. Impossible d'acceder aux données d'une autre organisation.
🛡️ 30 droits granulaires
Chaque outil d'écriture verifie les droits de l'utilisateur. Sans le droit requis, l'accès est refuse.
🚫 Double/Triple filtre SQL
Serveurs mutualises : filtre id + organisation.
Serveurs dedies : filtre id + organisation + nom organisation.
⏱️ Rate limiting
60 lectures/minute et 10 écritures/minute maximum pour eviter les abus.
👁️ Masquage des données sensibles
Les mots de passe, clés secretes et JWT sont automatiquement masques dans toutes les réponses.
Cas d'usage par role
- "Quels produits ont un stock inferieur au seuil d'alerte ?"
- "Montre-moi les 10 derniers mouvements sur le magasin Nord"
- "Créeune entrée de 200 gants isolants, lot 2026-A, emplacement B-12"
- "Combien de produits différents avons-nous en stock total ?"
- "Y a-t-il des produits qui périmént bientot ?"
- "Combien d'utilisateurs sont enregistres dans notre organisation ?"
- "Quels droits a l'utilisateur n°23 ?"
- "Montre-moi les logs d'erreur des dernières 24h"
- "Donne-moi les statistiques globales du dashboard"
- "Sur quel serveur suis-je connecté ?"
- "Liste mes classes de formation"
- "Quels scenarios de TP sont disponibles ?"
- "Montre la progression de mes eleves sur le scenario 'Inventaire complet'"
- "Quel est le score moyen de la classe sur le dernier TP ?"
- "Cherche le produit avec le code-barre 3700547800126"
- "Quel est le stock de ce produit dans l'emplacement C-01 ?"
- "Enregistre une sortie de 5 unites pour le chantier Lyon"
- "Quels bons de mouvement sont 'a traiter' ?"
- "Montre-moi la structure de la base de données"
- "Quels endpoints API sont disponibles ?" (resource
gse://docs/api) - "Quel est le format de réponse de l'API produits ?"
- "Combien de droits différents existent dans le système ?" (resource
gse://permissions/list) - Integrez le serveur MCP dans vos propres outils compatibles
Questions fréquentes
Non. Le serveur MCP ne persiste rien sur disque. Le JWT obtenu apres authentification est garde en mémoire uniquement pendant la session. Quand vous fermez Claude Code, tout est efface.
Non. Toutes les requêtes incluent un filtre organisations_id derive de votre JWT. Des filtres supplémentaires empêchent tout accès hors de votre organisation.
Claude Code demande toujours votre approbation avant d'executer un outil d'écriture. Vous verrez l'outil et ses paramètres, et vous pouvez refuser. De plus, un rate limiter limite les écritures a 10/minute.
Non. Le serveur MCP a besoin d'une connexion internet pour atteindre les APIs GSE-Web.
Oui. Modifiez les variables d'environnement dans .mcp.json :
"GSE_PROXY_BASE_URL": "https://gse-web.xlexe.com" "GSE_DEFAULT_SERVER": "https://www.gse-web.online/"
Le serveur MCP lui-meme est gratuit (open source, inclus dans le projet). Le cout se situe au niveau de l'IA : vous avez besoin d'un abonnement Claude (Pro, Team ou Enterprise) pour utiliser Claude Code ou Claude Desktop.
Apres un git pull du projet, recompilez simplement :
cd mcp-server && npm install && npm run build
Puis redemarrez Claude Code.