Aller au contenu principal
Retour au blog

Docker MCP Catalog : serveurs MCP vérifiés, signés, conteneurisés

Flavien Métivier29 avril 20254 min

Le 22 avril 2025, Docker a posé un jalon discret mais structurant pour l'écosystème des agents IA. Le Model Context Protocol (MCP), lancé par Anthropic fin novembre 2024, prolifère dans tous les sens — serveurs bricolés, récupérés de dépôts GitHub anonymes, lancés sans audit ni signature. Docker répond avec le MCP Catalog et le MCP Toolkit (beta) : plus de 300 serveurs MCP vérifiés, signés cryptographiquement, conteneurisés et disponibles directement depuis Docker Hub. Pour les équipes qui opèrent des stacks en production, c'est le premier signal fort qu'on peut intégrer ces outils avec une posture sécurité sérieuse.

MCP Catalog : 300 serveurs vérifiés et signés dans Docker Hub

L'annonce s'appuie sur des partenariats officiels avec Stripe, Elastic, Heroku et Salesforce. Chaque image est signée via Notary v2 (Docker Content Trust), ce qui permet d'attester son origine et son intégrité de bout en bout. Le MCP Toolkit, côté client, orchestre le lancement de ces serveurs — en local comme en CI — avec gestion native des credentials OAuth et isolation réseau, mémoire et disque par conteneur. La beta est disponible immédiatement, sans prérequis au-delà d'un compte Docker Hub standard.

# MCP Toolkit beta — commandes de base (avril 2025)
docker mcp catalog search stripe
docker mcp catalog list --verified

# Installation et lancement isolé d'un serveur
docker mcp install stripe
docker mcp run stripe --auth oauth

# Vérification de la signature de l'image
docker trust inspect --pretty docker.io/mcp/stripe

L'isolation est concrète : chaque serveur MCP tourne dans son propre conteneur, sur un réseau dédié, sans accès au filesystem hôte par défaut. Les credentials ne transitent plus en clair dans les variables d'environnement — le Toolkit gère le cycle de vie des tokens OAuth directement, hors de portée des processus applicatifs.

La supply chain IA, angle mort des stacks en production

Jusqu'à présent, intégrer MCP dans un projet Symfony ressemblait souvent à ça : un serveur cloné depuis GitHub, lancé avec node server.js, des secrets dans le .env, zéro audit, zéro provenance vérifiable. Le vecteur d'attaque est classique — un serveur MCP compromis dans la chaîne d'approvisionnement peut exfiltrer des credentials Doctrine, des clés API ou lire des fichiers de configuration Symfony sans déclencher la moindre alerte. Ce n'est pas hypothétique : c'est le schéma standard d'une supply chain attack transposé aux outils IA. Le Docker MCP Catalog répond à ce risque avec trois garanties concrètes :

  • Signature cryptographique : chaque image est traçable jusqu'à l'éditeur, vérifiable via docker trust inspect avant tout déploiement
  • Isolation conteneur : réseau dédié par serveur MCP, pas de montage disque hôte par défaut, limites mémoire et CPU configurables
  • Credentials managés : OAuth intégré dans le Toolkit, les tokens ne sont jamais exposés dans les variables d'environnement ni dans les logs conteneur

Votre équipe utilise Claude Code ?

Découvrir le workshop

Exemple concret : agent IA + MCP Stripe correctement cloisonné

Si tu construis un agent IA avec Claude 3.7 Sonnet pour automatiser de la facturation via Stripe, voilà comment structurer la stack pour cloisonner les accès MCP sans sacrifier l'ergonomie de développement :

# docker-compose.yml — stack agent IA + MCP Stripe (avril 2025)
services:
  app:
    build: .
    networks:
      - app-network
    volumes:
      - mcp-stripe-socket:/run/mcp
    environment:
      MCP_STRIPE_SOCKET: /run/mcp/stripe.sock

  mcp-stripe:
    image: docker.io/mcp/stripe:latest
    networks:
      - mcp-network       # isolé de app-network : pas d'accès BDD
    volumes:
      - mcp-stripe-socket:/run/mcp
    secrets:
      - stripe_api_key
    environment:
      TRANSPORT: unix-socket
    read_only: true
    security_opt:
      - no-new-privileges:true
    mem_limit: 256m

networks:
  app-network:
  mcp-network:

secrets:
  stripe_api_key:
    external: true

volumes:
  mcp-stripe-socket:

Le conteneur MCP Stripe est sur un réseau isolé, sans accès à la base de données ni aux autres services. La communication avec l'application passe par un socket Unix partagé. Le secret Docker gère la clé API sans qu'elle n'apparaisse dans docker inspect ou dans les logs. read_only: true et no-new-privileges ferment les vecteurs d'escalade les plus courants. C'est le niveau de rigueur qu'on applique depuis des années aux composants d'infrastructure — il était temps de l'appliquer de façon standardisée aux outils IA.

Pourquoi cette annonce est structurante pour 2025

Le Docker MCP Catalog n'est pas un simple annuaire. C'est une tentative de normaliser la distribution des outils IA avec les mêmes garanties qu'on exige des images applicatives en production : signature, provenance, isolation. Les partenariats officiels avec Stripe, Elastic et Salesforce signalent que les éditeurs SaaS majeurs prennent MCP au sérieux comme canal d'intégration. La roadmap annoncée inclut l'intégration dans Docker Desktop et la gestion multi-tenant pour les organisations. Pour les équipes qui évaluaient les agents IA avec scepticisme — « comment je sécurise ça en prod ? » — cette initiative fournit enfin un cadre opérationnel crédible.

Si tu veux évaluer comment intégrer des agents IA dans ta stack PHP/Symfony sans créer de dette sécurité — quels serveurs MCP exposer, comment cloisonner les credentials, quels risques supply chain cartographier avant de passer en production — c'est exactement le périmètre d'un Bear Scan. Un audit ciblé, des recommandations actionnables. Contacte-moi pour en discuter.

Cet article vous a plu ? Partagez-le !

Votre équipe utilise Claude Code ?

Workshop intensif : votre équipe opérationnelle en 1 jour.