Un serveur MCP étend les capacités d’un agent. C’est précisément son objectif, mais aussi son risque : vous ouvrez à un programme tiers un canal vers une session qui peut déjà lire votre code source et exécuter des commandes.

Cette liste sert à évaluer un serveur que vous n’avez pas écrit. Elle ne contient rien d’exceptionnel ; il s’agit d’appliquer la même prudence qu’à toute dépendance exécutée avec vos droits.

Avant l’installation

Lisez ce qu’il fait réellement. Un serveur MCP est généralement un petit programme. Si son code source est disponible, les définitions des outils tiennent souvent dans un seul fichier dont la lecture prend dix minutes.

Vérifiez ce qu’il demande. Un serveur qui lit votre calendrier n’a aucune raison de réclamer l’accès au système de fichiers. Des permissions excessives dès l’installation constituent l’un des signaux d’alerte les plus clairs.

Préférez les serveurs dont vous pouvez figer la version. Une version verrouillée ne peut pas changer à votre insu. Tout composant mis à jour automatiquement dans la session de l’agent obtient de nouveau votre confiance en silence, selon le calendrier de quelqu’un d’autre.

Identifiants

Ne collez jamais un identifiant à longue durée de vie dans la description d’un outil ou dans un prompt. Tout ce qui entre dans le prompt figure dans la transcription, laquelle peut être enregistrée, résumée ou transmise.

Réduisez la portée des jetons au strict minimum. Si le serveur doit seulement lire un dépôt, ne lui accordez que ce dépôt. La plupart des API le permettent, même si de nombreuses instructions d’installation ne le mentionnent pas.

Conservez les secrets dans des variables d’environnement, pas dans des fichiers de configuration susceptibles d’être commités. Ajouter .env à .gitignore est un minimum, mais évite tout de même une erreur fréquente.

Ce que voit l’agent

Les descriptions des outils font partie du contexte du modèle. Un serveur hostile peut donc y insérer des instructions. Traitez la sortie d’un outil comme une entrée non fiable, de la même manière qu’une page web récupérée par l’agent : le contenu renvoyé est une donnée, pas une directive à suivre.

Ce point est particulièrement important pour les serveurs qui récupèrent du contenu distant. Un serveur qui renvoie le contenu d’une URL peut transmettre un texte contrôlé par un attaquant.

Suivi continu

  • Réexaminez régulièrement les serveurs connectés et supprimez ceux que vous n’utilisez plus
  • Surveillez les changements de permissions après les mises à jour
  • Exécutez les agents avec le périmètre d’accès au système de fichiers le plus réduit permis par la tâche

Ce que cette liste ne couvre pas

Elle ne rend pas sûr un serveur indigne de confiance et ne détecte pas un serveur malveillant délibérément bien conçu. Elle réduit la surface des accidents, qui sont à l’origine de la plupart des problèmes réels.