Nous en avons récemment fait la promotion via notre page LinkedIn : nous avons commencé à tester l’usage de Bob en interne pour voir ce qu’il a dans le ventre. Nous continuons ce travail tout au long du mois d’août mais déjà, certains retours peuvent être réalisés et notamment à propos d’un élément qui peut aisément passer sous le radar : la commande /init.
Pour celles et ceux qui ont commencé à utiliser Bob, vous aurez constaté qu’IBM a créé une page d’accueil spécifique pour les détenteurs d’une licence payante. C’est assez sympa, IBM y a centralisé des accès vers des présentations rapides d’outils pratiques.
Vous aurez remarqué qu’une des tuiles se nomme « Slash Commands », que l’on peut traduire dans la langue de Molière par « commandes intégrées ». Et étrangement, /init est absente de la liste des commandes intégrées à laquelle cette tuile donne accès. Il m’a fallu lire la documentation en ligne de Bob avec un peu plus d’attention pour trouver trace de son existence.
La commande /init
Bon, la grammaire est assez transparente, vous l’aurez compris, cette commande a un rôle d’initialisation. Mais initialiser quoi, en fait ? Eh bien d’initialiser l’utilisation de Bob dans votre projet ! L’idée derrière cette commande est de générer un ensemble de documents, adaptés à l’environnement de travail actuellement ouvert, sur lesquels Bob pourra ensuite s’appuyer pour répondre à vos demandes de manière plus efficaces et moins coûteuse.
Usage de la commande
Cette partie est assez simple :
Ouvrez la barre latérale secondaire (Ctrl+Alt+B) de Bob. Vous y trouverez la vue de gestion des conversations avec l’agent IA.
Dans le bloc bas de cet espace, assurez-vous que le mode « agent » soit bien sélectionné
Dans l’espace dédié à l’écriture de texte, tapez simplement /init et appuyez sur Entrée.
L’exécution de la commande va générer plusieurs documents markdown nommés AGENTS.md.
Le premier sera placé à la racine du dossier du projet et contiendra une description générale du contexte du projet.
Les autres seront placés dans un dossier ‘.bob’ créé lui aussi à la racine du projet Chacun d’entre eux sera dans un sous-dossier dédié, correspondant à un des principaux modes d’action de l’agent Bob (« ask », « plan », « agent »…)
Limitations
Cette commande se base sur l’espace de travail actuellement ouvert dans Bob ; typiquement, votre référentiel Git local d’un projet hébergé sur Github / Gitlab / votre IBM i. Le fait même que la commande crée un dossier ‘.bob’ la rend incompatible avec une vision purement « QSYS ».
/wp-content/uploads/2017/05/logogaia.png00Lucas Kleinmann/wp-content/uploads/2017/05/logogaia.pngLucas Kleinmann2026-08-18 10:02:102026-08-18 10:02:11La commande intégrée ‘/init’ de Bob
Quand Service Commander, un serveur MCP et une locale pakistanaise décident de compliquer votre journée
Ces derniers jours, j’ai installé un serveur MCP IBM i en m’appuyant sur Service Commander. Une opération qui, sur le papier, semblait relativement simple : installer le serveur MCP, créer le service par service commander pour faciliter l’exploitation.
Pourtant, je me suis retrouvé face à un comportement particulièrement déroutant. Et c’est là que l’utilisation de l’IA (BOB en l’occurrence) s’est révélée extrêmement intéressante.
Le symptôme : ça marche… sauf quand ça ne marche pas
Le serveur MCP démarrait parfaitement lorsque je lançais cette commande avec le profil MCPSERVER créé pour l’occasion :
sc start ibmi-mcp-server
Mais avec mon profil habituel, j’obtenais systématiquement un message d’erreur, ou alors un message de complétion mais le serveur MCP était inactif.
Le détail intriguant était que le service était pourtant configuré pour soumettre le job sous le profil MCPSERVER :
sbmjob_opts: 'JOBQ(QUSRNOMAX) USER(MCPSERVER)'
En théorie, le profil appelant n’aurait donc pas dû avoir d’importance.
La tentation du mauvais diagnostic
Le premier réflexe est de suspecter :
un problème de droits ;
un problème de PATH ;
une configuration npm ;
Node.js ;
la configuration MCP ;
ou encore Service Commander lui-même.
J’ai commencé à analyser les jobs, les spools, les variables d’environnement et les traces de démarrage.
Rapidement, une chose est apparue : le job était bien soumis sous MCPSERVER, mais l’environnement du processus n’était pas toujours cohérent.
Une découverte intéressante
Les premiers logs montraient que lorsque le démarrage était demandé par NB, certaines informations restaient liées à ce profil :
HOME=/home/NB
USER=nb
LOGNAME=nb
alors que le job tournait sous MCPSERVER.
J’ai donc modifié la configuration pour désactiver l’héritage implicite de l’environnement :
environment_is_inheriting_vars: false
et défini explicitement les variables nécessaires.
Le comportement a changé, mais le problème n’était toujours pas totalement résolu.
Le vrai coupable : la commande de démarrage
Pendant plusieurs itérations, j’ai tenté de simplifier la définition du service :
Pourquoi un serveur IBM i situé en France essayait-il d’utiliser une locale pakistanaise ?
Après investigation, j’ai découvert que Service Commander contient la logique suivante :lorsque aucune locale UTF-8 n’est définie dans l’environnement, Service Commander choisit simplement… la dernière locale (par ordre alphabétique) UTF-8 trouvée sur le système.
Sur ma machine, c’était : ur_PK.UTF-8, c’est-à-dire :
ur = ourdou
PK = Pakistan
D’où le message surprenant.
La solution a finalement consisté à définir explicitement :
export LC_ALL=FR_FR.UTF-8@euro
dans ~/.profile et ~/.bashrc
Depuis, plus aucun avertissement.
Et BOB dans tout ça alors ?
Ce que l’IA m’a réellement apporté ?
La partie la plus intéressante de cette aventure n’est pas le problème technique lui-même, j’aurais fini par trouver la solution. Les indices étaient là :
les spools ;
les joblogs ;
les variables d’environnement ;
le comportement différent selon le profil utilisé.
Mais cela m’aurait probablement pris plusieurs heures supplémentaires, que j’aurais réparti sur plusieurs jours.
L’IA n’a pas « résolu le problème à ma place ». Elle n’a pas eu accès à ma machine (je vous rappelle que j’installais le serveur MCP à ce moment là), à mes commandes ou à la documentation interne de mon environnement.
En revanche, elle a joué un rôle extrêmement utile :
proposer des pistes d’investigation ;
analyser rapidement les spools ;
repérer les incohérences ;
suggérer des vérifications ciblées ;
éliminer de nombreuses hypothèses ;
structurer le raisonnement.
En pratique, elle s’est comportée comme un collègue expérimenté assis à côté de moi, capable de relire instantanément chaque log et de suggérer la prochaine étape.
J’hallucine ?
Pas beaucoup sur cette affaire là ! Pas de commande (shell ou IBM i) extravagante, de boucle dans les réponse, d’idée totalement saugrenue.
Attention, plusieurs critères à prendre en compte :
je connais le sujet
j’ai fait des prompts verbeux et précis
j’ai détecté les mauvaises pistes ET donner les informations pour que BOB comprenne pourquoi c’est une mauvaise piste
Ce que je retiens
L’apport principal de BOB dans ce type de situation n’est pas le remplacement de l’expertise.
C’est l’accélération du diagnostic.
Mon expertise IBM i m’a permis d’interpréter les résultats, de comprendre les implications et de valider les solutions. L’IA, elle, m’a aidé à parcourir beaucoup plus rapidement l’arbre des hypothèses possibles.
Résultat :
un serveur MCP fonctionnel ;
une configuration Service Commander plus robuste ;
une anomalie de locale identifiée et corrigée ;
et quelques heures gagnées sur une enquête qui aurait probablement été bien plus longue en solitaire.
Et, accessoirement, j’ouvrirais une issue sur la gestion des locales par service commander !
https://www.gaia.fr/wp-content/uploads/2017/02/team1.png600600Nathanaël Bonnet/wp-content/uploads/2017/05/logogaia.pngNathanaël Bonnet2026-07-07 09:40:552026-07-07 19:38:00Comment BOB m’a aidé, à l’aider !
API, IA, VSCodeQu’est-ce que le Model Context Protocol (MCP) ?
Définition du protocole MCP
Le Model Context Protocol (MCP) est un protocole ouvert et standardisé qui permet aux intelligences artificielles (comme Claude, ChatGPT, ou autres grands modèles de langage) de se connecter facilement à des outils, services et sources de données externes. C’est un peu comme l’USB-C des applications IA : au lieu d’avoir un câble différent pour chaque appareil, tu as un seul connecteur universel qui fonctionne avec tout.
Comment ça fonctionne ?
Sans MCP, chaque outil (GitHub, base de données, email, API) avait sa propre façon de se connecter, ce qui obligeait les développeurs à créer des intégrations personnalisées pour chaque combinaison. Avec le MCP, tout le monde utilise la même méthode standard, ce qui rend les connexions beaucoup plus simples et universelles.
Le MCP permet aux IA de sortir de leurs données d’entraînement et d’accéder à des informations en temps réel. Mais surtout, il leur permet d’agir dans le monde réel. Par exemple, tu peux demander à ton IA dans VS Code de lire un fichier source, puis d’écrire automatiquement un résumé dans ton outil de prise de notes comme Notion. D’autres actions possibles : envoyer un email, consulter GitHub, modifier un fichier, créer un événement dans l’agenda, etc. C’est ce qui rend possible l’IA agentique : des programmes intelligents capables de poursuivre des objectifs et d’entreprendre des actions de manière autonome, sans que l’humain ait à copier-coller ou basculer manuellement entre ses outils.
Pourquoi est-il important de s’intéresser au protocole MCP ?
Pour rappel, le protocole MCP joue un rôle essentiel puisqu’il facilite les échanges entre les IA, les applications et les outils utilisés en entreprise. Il permet de connecter plus simplement différents systèmes tout en améliorant la circulation et l’exploitation des données.
Selon les différents rôles dans une entreprise, le MCP apporte plusieurs avantages :
Équipes techniques et développeurs : il simplifie les intégrations, réduit la complexité du développement et accélère la mise en place de nouveaux outils.
Managers et responsables métiers : il améliore l’automatisation, la circulation des informations et l’efficacité des processus internes.
Pour les responsables métiers et managers : ilaméliore la circulation des informations et facilite l’automatisation de certaines tâches. Il aide les managers à gagner du temps, à mieux suivre les activités et à prendre des décisions plus efficacement grâce à un accès simplifié aux données.
En résumé les MCP accompagne la modernisation des entreprises en favorisant des architectures plus connectées, flexibles et évolutives.
Exemple d’utilisation :
Étapes du processus
L’utilisateur saisit sa question dans l’interface de chat (ex. : « Quelles commandes sont en retard cette semaine ? »).
L’assistant IA transmet la requête au serveur MCP PostgreSQL ou autre.
Le serveur MCP traduit la requête en SQL et interroge la bdd.
Le résultat est retourné au LLM, qui formule une réponse en langage naturel.
L’utilisateur obtient une réponse contextualisée, sans accès direct à la base.
La sécurité des MCP
Le MCP supporte OAuth pour l’authentification et recommande TLS pour le chiffrement des échanges.deux mécanismes que tu dois explicitement configurer, ils ne sont pas actifs par défaut
Le modèle Zero Trust : « ne jamais faire confiance au réseau, même interne ».
Les bonnes pratiques recommandées :
Accorder aux serveurs MCP uniquement les droits strictement nécessaires à leur fonctionnement, conformément au principe du moindre privilège, afin de limiter les risques liés aux erreurs, attaques ou accès non autorisés.
Contrôler régulièrement les accès et permissions attribués à chaque serveur pour éviter toute autorisation excessive ou inutile.
Vérifier et comprendre précisément les accès accordés lors de la mise en place d’une connexion MCP.
Utiliser exclusivement des serveurs MCP fiables et de confiance.
Human-in-the-loop : toujours exiger une confirmation manuelle avant les actions critiques (suppression, déploiement, envoi)
Sandboxing : isoler les serveurs MCP dans des containers Docker pour limiter la portée d’une compromission
Rotation des secrets : ne jamais hardcoder de clés API dans la config MCP.
/wp-content/uploads/2017/05/logogaia.png00Dilhan Dincer/wp-content/uploads/2017/05/logogaia.pngDilhan Dincer2026-06-02 10:00:002026-06-02 17:23:19Qu’est-ce que le Model Context Protocol (MCP) ?