Architecture : outils, ressources et interface
Sur cette page
Leçon réécrite le 3 novembre 2026 d’après les pages MCP server, Plugin architecture et Skills de la documentation Plugins d’OpenAI. L’ancienne architecture « actions, widgets, commerce » décrivait un SDK qui n’existe pas. Sources : MCP server · Plugin architecture · Skills.
Vue d’ensemble
Un plugin s’organise en couches indépendantes. Les skills apportent le mode d’emploi, le serveur MCP apporte les capacités, l’interface apporte, au besoin, une manière visuelle d’interagir.
Plugin
├── Skills
└── Serveur MCP (facultatif)
├── Outils et résultats structurés
└── Ressources d'interface (facultatives)
Chaque couche a un rôle net. La documentation résume la frontière ainsi : le serveur MCP fournit les données, l’authentification, l’autorisation et les actions ; la skill fournit les instructions réutilisables, les exemples, les modèles de documents.
Ce qu’expose un serveur MCP
Un serveur MCP peut exposer quatre sortes de choses :
- des outils, des fonctions que le modèle appelle avec des entrées structurées ;
- des ressources, des données ou des contenus que le client peut lire ;
- des prompts, des modèles de prompt réutilisables ;
- des instructions, des consignes qui valent pour l’ensemble du serveur.
Les plugins s’appuient surtout sur les outils. Chacun a un nom, une description, un schéma d’entrée et, facultativement, un schéma de sortie : ce sont ces champs qui permettent au modèle de décider quand appeler l’outil et comment exploiter son résultat.
Le trajet d’une demande
Quand un utilisateur demande quelque chose qui correspond à un outil, quatre étapes s’enchaînent :
- Le client découvre les outils qu’expose le serveur MCP.
- Le modèle choisit un outil et fournit des arguments conformes à son schéma d’entrée.
- Le serveur valide la requête, effectue l’opération et renvoie un résultat.
- Le modèle se sert de ce résultat pour poursuivre la conversation.
Le résultat d’un outil peut contenir trois parties. structuredContent porte des données concises que le modèle peut examiner et réutiliser dans les appels suivants. content porte du texte, ou un autre contenu MCP, qui l’aide à répondre. _meta porte des données destinées au client et cachées au modèle — cachées, mais pas protégées : ce champ ne remplace ni l’autorisation ni un stockage sécurisé.
Transport et autorisation
En production, un serveur MCP se déploie à une adresse HTTPS stable, avec le transport streamable HTTP du protocole, en général sur un chemin /mcp. Si des outils lisent des données privées ou agissent pour le compte d’un utilisateur, le serveur se protège avec le flux d’autorisation défini par la spécification MCP — OAuth, que la leçon 8 détaille.
L’interface, une couche facultative
Un outil doit fonctionner sans interface : du texte concis et un résultat structuré suffisent souvent au modèle pour répondre. Une interface se justifie quand l’utilisateur doit inspecter, comparer, modifier, confirmer ou parcourir des informations structurées — un comparatif de produits, un planning modifiable, une carte. Une simple consultation d’état, elle, n’en a généralement pas besoin.
Quand elle existe, l’interface est une ressource que le serveur déclare, et que ChatGPT affiche dans une iframe lorsque l’outil associé la renvoie. ChatGPT implémente le standard ouvert MCP Apps : l’interface dialogue avec l’hôte en JSON-RPC par postMessage. Des extensions propres à ChatGPT, accessibles par window.openai, s’ajoutent quand le standard ne couvre pas un besoin. La leçon 6 y est consacrée.
Les skills, couche de workflow
Une skill est un dossier contenant un fichier SKILL.md — un nom, une description qui indique au modèle quand y penser, des instructions — et, au besoin, des références, des scripts ou des modèles. Le modèle ne voit d’abord que le nom et la description ; il charge les instructions complètes quand la demande correspond à la skill ou quand l’utilisateur l’invoque directement. D’où le conseil d’OpenAI : rédiger la description autour de l’objectif de l’utilisateur et des conditions de déclenchement, et garder le détail des étapes dans le corps.
Et le commerce ?
Vendre depuis un plugin n’est pas une couche à part : c’est un parcours que l’interface facultative peut porter, en s’appuyant sur l’API Checkout documentée par OpenAI. La leçon 7 en présente le fonctionnement et les limites.
Points clés à retenir
- Un serveur MCP expose des outils, des ressources, des prompts et des instructions ; les plugins s’appuient surtout sur les outils
- Un résultat d’outil combine
structuredContent,contentet_meta(caché au modèle, mais pas sécurisé) - Production : HTTPS stable, transport streamable HTTP, autorisation selon la spécification MCP
- L’interface est une ressource facultative, affichée par ChatGPT selon le standard MCP Apps
- Les skills portent le workflow ; le serveur porte les données, l’autorisation et les actions