01Autorisation et OAuth
La spécification exige un consentement par client (Per-Client-Consent) avant toute redirection vers un tiers, ainsi qu'une vérification exacte de la redirect_uri par correspondance de chaîne plutôt que par wildcards ; à défaut, c'est l'attaque Confused Deputy qui menace. De même s'applique l'interdiction du Token Passthrough : les tokens qui n'ont pas été explicitement émis pour votre serveur doivent être refusés. Les scopes sont minimisés selon le principe du Least Privilege, afin de contenir le rayon d'impact d'un token volé.
02Sécurité des sessions
Les identifiants de session ne doivent jamais servir à l'authentification et doivent être générés de manière non déterministe (UUID, CSPRNG). Liez chaque session à l'utilisateur, par exemple au format de clé <user_id>:<session_id>, vérifiez chaque requête entrante et faites en sorte que les identifiants tournent ou expirent. Vous ôtez ainsi tout fondement au Session Hijacking et à l'usurpation d'identité.
03Validation des Tools et des schémas
Les descriptions de Tools et les schémas de paramètres constituent un vecteur d'attaque à part entière (Tool Poisoning) : s'ils sont manipulés, le modèle exécute des instructions étrangères. Vérifiez strictement les paramètres d'entrée par rapport au schéma et garantissez la provenance et l'intégrité des définitions de Tools. À cet égard, les recommandations de la NSA préconisent explicitement de valider les paramètres ainsi que de signer et de vérifier les messages MCP.
04Isolation et sandboxing
Les serveurs MCP locaux s'exécutent avec les droits du client ; un code compromis touche donc directement votre système. Le confinement (containment) relève de l'architecture : conteneurs, chroot ou sandbox applicative aux droits minimaux, processus enfants isolés et, dans la mesure du possible, le transport stdio. La recommandation de la NSA « Constrain and sandbox tool execution » recoupe cette exigence.
05Journalisation et surveillance
Sans pistes d'audit complètes, l'exfiltration passe inaperçue et l'attribution des actions se rompt. Journalisez chaque action, y compris l'utilisation de stdio, et analysez-les à la recherche d'anomalies ; la « Lethal Trifecta » (Simon Willison, 2025) devrait être vérifiée pour chaque agent. La NSA désigne l'absence de journaux d'audit comme un problème de sécurité à part entière et recommande une instrumentation pour la journalisation (logging) et la détection.
06Processus de validation et d'exploitation
N'intégrez que des serveurs MCP vérifiés ; une inscription dans une registry ne constitue pas une preuve de confiance. Les dialogues de consentement doivent afficher la commande de démarrage complète, sans troncature, et signaler les motifs dangereux ; les vulnérabilités doivent être suivies et corrigées en continu. La NSA conseille de choisir des projets MCP maintenus et d'éviter les workflows de validation faibles (« Poor approval workflows »).