Guide · IA & agents

MCP et Slack : connecter des messages avec des permissions minimales

Utiliser MCP avec Slack sans exposer un espace de travail : application de test, scopes lecture seule, canaux limités, secrets protégés et validation.

MCP peut rendre certains contenus Slack accessibles à un client d’IA, par exemple pour rechercher des messages dans un canal de démonstration. Cette intégration est sensible : un espace Slack peut contenir des discussions privées, des fichiers, des liens internes et des informations commerciales. Le premier pilote doit donc utiliser un workspace de test, une application dédiée, des scopes de lecture minimum et un seul canal non sensible.

Ne commencez pas avec un outil qui publie, invite, supprime ou modifie des messages. La lecture d’un canal de démonstration suffit à tester le chemin technique et les contrôles de données. Toute action d’écriture doit être conçue séparément, avec une confirmation humaine, un contenu de test et une procédure de correction si le message est envoyé au mauvais endroit.

Ce que vous allez apprendre

Vous allez définir un pilote MCP/Slack, créer une identité d’intégration limitée, gérer un token sans l’exposer, restreindre les canaux, valider les recherches et relire les logs. L’objectif est d’apprendre à contrôler le périmètre avant d’envisager un usage plus large.

Prérequis

Préparez un workspace Slack de test ou un canal explicitement destiné aux essais, une application Slack dédiée et l’accord de l’administrateur du workspace. Consultez la documentation Slack pour les scopes et le modèle de tokens correspondant à votre cas, ainsi que la documentation du serveur MCP utilisé.

Écrivez le contrat du pilote :

Donnée autorisée : messages fictifs du canal #mcp-demo.
Action autorisée : recherche ou lecture seulement.
Action interdite : publier, modifier, supprimer, inviter.
Identité : application de test avec scopes réduits.

Vérification : aucun canal privé ou client n’est inclus. Si la question nécessite une information sensible, interrompez le pilote et faites valider la classification des données.

1. Créer une application Slack de test

Ne réutilisez pas une application déjà utilisée par des automatisations de production. Une application dédiée permet de comprendre ses scopes, de la retirer facilement et de limiter les effets d’une erreur. Donnez-lui un nom clair indiquant son usage de test et documentez son propriétaire.

Dans Slack, les permissions déterminent ce que l’application peut voir et faire. Choisissez uniquement les scopes requis pour lire les données de démonstration. N’ajoutez pas des droits de gestion du workspace, d’administration, d’écriture ou d’accès à tous les canaux simplement parce qu’un guide générique les mentionne.

Vérification : l’application ne peut pas publier un message dans le canal de test et ne voit pas les canaux hors périmètre. Testez ce refus de façon non destructive avant de connecter MCP.

2. Protéger le token et les paramètres

Le token Slack est un secret. Stockez sa valeur dans une variable d’environnement protégée ou le mécanisme de secrets prévu par votre environnement. Ne l’écrivez pas dans la configuration du serveur MCP, un fichier versionné, une capture ou un prompt.

Un fichier d’exemple peut indiquer seulement le nom :

SLACK_MCP_TEST_TOKEN="remplacez-par-un-token-limite"

Si le token est affiché dans un log, un export ou une conversation, considérez-le comme exposé. Révoquez-le, contrôlez où il a circulé et créez une nouvelle identité ou valeur avec une portée réduite. Le retrait d’une ligne du dépôt ne suffit pas à supprimer les copies déjà disponibles.

Vérification : recherchez les valeurs sensibles dans les fichiers et les sorties de test. Seules des valeurs fictives ou des noms de variables doivent apparaître.

3. Limiter les canaux et le contenu

Un scope lecture seul ne suffit pas toujours à limiter les données réellement accessibles. Configurez l’application et le serveur de manière à ne traiter que le canal de démonstration lorsque c’est possible. Évitez les recherches globales sur le workspace, même si elles semblent pratiques : elles peuvent retourner des messages de projets, des identifiants ou des discussions non destinées à l’assistant.

Préparez des messages fictifs qui permettent de tester le format : un titre de procédure, une question fréquente et une réponse courte. N’utilisez pas de vraies conversations pour déboguer un pilote. Le contenu Slack peut aussi contenir des instructions inattendues ; il doit être traité comme donnée non fiable, pas comme un ordre qui modifie vos règles.

Vérification : une recherche de test ne retourne que les messages que vous avez placés dans le canal autorisé. Tout résultat extérieur est un motif d’arrêt et de revue.

4. Déclarer une seule capacité MCP

Suivez la documentation du client et du serveur MCP pour définir l’outil. Donnez-lui un nom explicite, tel que search_demo_slack_messages, et imposez un terme de recherche court ainsi qu’une limite de résultats. Un outil spécialisé est plus sûr qu’un outil générique qui accepte des requêtes libres ou peut appeler toutes les méthodes Slack.

Relisez les paramètres avant le démarrage : URL, workspace de test, canal ciblé, variable de secret et absence d’outil de publication. Notez la version du serveur MCP et de l’application Slack évaluées. Ne lancez qu’une intégration à la fois pour pouvoir interpréter les logs.

Vérification : le client liste seulement l’outil lecture prévu. Aucun outil post_message, delete_message ou équivalent ne doit être disponible pendant ce pilote.

5. Tester la lecture et les erreurs

Faites une recherche qui doit trouver un message fictif, puis une recherche sans résultat et une entrée invalide. Vérifiez le nom de l’outil, les paramètres, le canal interrogé et le résultat. Les erreurs doivent expliquer le problème sans afficher le token, les réglages complets ou le contenu d’autres canaux.

Conservez une trace minimale : date, application de test, canal, outil appelé et résultat synthétique. Les logs peuvent aider à auditer l’intégration, mais leur durée et leur accès doivent respecter la politique du workspace. Ne journalisez pas chaque message en entier si un identifiant de résultat suffit.

Vérification : contrôlez dans Slack qu’aucun message n’a été publié et que le pilote n’a touché que le canal prévu. Cette vérification doit être faite après chaque changement de permission.

Problèmes fréquents et solutions

L’application demande des scopes trop larges

Réduisez le cas d’usage ou recherchez une configuration plus limitée. Un pilote de recherche dans un seul canal ne justifie pas l’administration du workspace.

Une recherche retourne un message privé

Arrêtez l’intégration, examinez les scopes et la logique de filtrage, puis testez à nouveau uniquement avec un workspace ou canal de démonstration. Ne masquez pas simplement le résultat après qu’il a été transmis.

Le serveur veut publier une réponse dans Slack

Gardez cette capacité désactivée. Si elle est réellement nécessaire, créez un second pilote avec un canal sandbox, un modèle de message et une confirmation humaine.

FAQ

Puis-je connecter MCP à mon Slack professionnel ?

Seulement après une revue des données, des permissions, des logs et de l’accord des responsables. Commencez par un environnement ou canal de test non sensible.

Quel token Slack faut-il utiliser ?

Utilisez l’identité et les scopes documentés par Slack pour votre scénario, avec la portée minimum. Cet article ne recommande aucune valeur de token ni permission universelle.

MCP peut-il envoyer des messages ?

Un serveur peut exposer cette capacité, mais elle doit rester hors du premier pilote lecture seule et être soumise à confirmation.

Comment retirer l’intégration ?

Désactivez la configuration du client MCP, arrêtez le serveur, révoquez le token de test et désinstallez l’application de test si elle n’est plus nécessaire.

Les messages Slack sont-ils des instructions fiables ?

Non. Ils sont du contenu potentiellement non fiable. Les règles de votre projet et les permissions approuvées restent prioritaires.

Conclusion

MCP et Slack peuvent être utiles pour retrouver un contexte de travail, à condition de réduire l’intégration à un canal, une application et une capacité de lecture. Un token protégé, des scopes minimaux et une vérification après chaque appel empêchent qu’un pilote d’assistance devienne un accès large au workspace.

Sources et limites

Les scopes et capacités Slack évoluent. Ce guide ne valide aucun serveur tiers ni application de production, et ne recommande pas d’accès à des conversations sensibles.