For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Navigation principale

Soumission de plugins

Soumettez, publiez et maintenez un plugin via la plateforme OpenAI

Utilisez le portail de soumission de plugins pour soumettre un plugin à révision lorsque vous êtes prêt à le rendre accessible au public.

Si vous migrez un plugin ou un connecteur Claude Code existant, consultez d’abord Soumettez votre plugin Claude Code à OpenAI pour connaître les modifications à apporter avant de commencer la soumission.

Si le portail renvoie un code d’erreur, consultez la référence des erreurs de soumission pour trouver l’exigence correspondante.

Un plugin peut contenir des skills, des serveurs MCP ou les deux. Vous pouvez soumettre :

  • Un plugin contenant uniquement des skills qui regroupent des workflows réutilisables.
  • Un plugin reposant uniquement sur un serveur MCP distant. Une interface personnalisée est facultative.
  • Un plugin qui combine un serveur MCP distant avec des skills importés depuis des fichiers ou via MCP.

Soumettez les serveurs MCP en choisissant Avec MCP et en utilisant un point de terminaison HTTPS public et stable. Si votre serveur MCP s’exécute localement, déployez-le à une URL HTTPS publique. Si ce n’est pas possible, contactez votre interlocuteur OpenAI pour obtenir de l’aide concernant la prise en charge de MCP en local.

Le portail recueille les informations de la fiche publique, les détails du serveur MCP ou du package, les skills, les prompts de démarrage, les cas de test, les pays de disponibilité et les attestations de conformité aux politiques. Les champs à remplir dépendent du contenu du plugin : des skills, un serveur MCP distant ou les deux.

Pour le développement local, la création de packages et la configuration de la marketplace, consultez Créer des plugins.

Pour les capacités reposant sur un serveur, consultez Créer un serveur MCP.

Avant de soumettre votre plugin

Soumettez le serveur MCP distant, et non une référence à une intégration existante

Vous ne pouvez pas soumettre un plugin qui fait référence à une intégration existante déjà publiée. Si votre plugin inclut un serveur MCP déjà présent dans ChatGPT ou Codex, soumettez ce serveur depuis le début via le portail, en créant une nouvelle soumission de plugin reposant sur MCP. Le portail analyse ce serveur MCP, valide les métadonnées des outils et utilise les détails du serveur soumis lors de la révision.

Obtenez l’accès à la soumission de plugins

Vous devez disposer d’un rôle dans l’organisation avec un accès en écriture aux soumissions de plugins pour pouvoir créer ou soumettre des brouillons de plugins. Sur la plateforme, cette autorisation porte actuellement le nom Gestion des applications.

  1. Ouvrez les paramètres des rôles de la plateforme OpenAI.
  2. Sélectionnez l’organisation propriétaire du plugin.
  3. Ouvrez le rôle attribué à la personne chargée de la soumission, ou créez un nouveau rôle.
  4. Dans les autorisations du rôle, définissez Gestion des applications sur Écriture.
  5. Enregistrez le rôle et attribuez-le à chaque personne qui doit créer, modifier ou soumettre des brouillons de plugins.
  6. Rechargez le portail de soumission de plugins.
Autorisation d’écriture pour la gestion des applications dans les paramètres des rôles de la plateforme

Les propriétaires de l’organisation disposent déjà de ces autorisations. Les autres personnes chargées des soumissions ont besoin d’un accès en écriture pour créer ou soumettre des brouillons, et d’un accès en lecture pour consulter les brouillons et l’état de leur révision.

Faites vérifier votre identité de développeur ou d’entreprise

Toute soumission destinée au public doit utiliser une identité de développeur ou d’entreprise vérifiée sur la plateforme OpenAI. Les responsables de la révision utilisent cette identité pour confirmer que la soumission correspond au nom, au site web, au contact d’assistance, à la politique de confidentialité et aux conditions figurant sur votre fiche publique.

Pour faire vérifier une identité :

  1. Connectez-vous à la plateforme OpenAI.
  2. Sélectionnez l’organisation qui publiera le plugin.
  3. Ouvrez les paramètres de l’organisation.
  4. Effectuez la vérification individuelle si vous comptez publier sous votre propre nom, ou la vérification d’entreprise si vous comptez publier sous le nom d’une entreprise.
  5. Revenez au formulaire de soumission de plugins et sélectionnez l’identité vérifiée dans le champ Identité du développeur .

Les responsables de la révision peuvent rejeter les soumissions dont l’identité de l’éditeur n’est pas vérifiée ou ne correspond pas aux informations fournies. Consultez les exigences de vérification des organisations pour connaître la règle de révision applicable.

Si la plateforme indique que l’identité du développeur ou de l’entreprise est vérifiée mais que le formulaire de soumission de plugins ne la reconnaît pas, vérifiez que vous effectuez la soumission depuis la même organisation et le même projet que ceux où l’identité a été vérifiée. La personne chargée de la soumission doit également disposer d’un accès en écriture à Gestion des applications pour cette organisation. Demandez à un propriétaire ou à un administrateur de l’organisation de mettre à jour le rôle attribué à la personne chargée de la soumission, puis rechargez le portail de soumission de plugins.

Préparez les éléments requis

Avant d’ouvrir le formulaire, rassemblez les éléments suivants :

ÉlémentÀ préparer
Informations de la fiche publiqueNom du plugin, description courte, description longue, logo, catégorie, site web, URL d’assistance, URL de la politique de confidentialité et URL des conditions.
Identité du développeurIdentité individuelle ou d’entreprise vérifiée sur la plateforme OpenAI.
Serveur MCP distantURL publique du serveur MCP, accès nécessaire à la vérification du domaine, détails d’authentification, identifiants de démonstration si nécessaire, politique de sécurité du contenu et métadonnées exactes des outils.
Annotations des outilsPour les plugins avec un serveur MCP distant : les valeurs de readOnlyHint, openWorldHint et destructiveHint pour chaque outil MCP.
SkillsPour les plugins contenant des skills : un ensemble final de skills ou un serveur MCP distant qui expose des skills statiques à importer à l’aide de Analyser les outils .
PromptsDes prompts de démarrage qui illustrent des workflows utiles et réalistes.
Cas de testCinq cas de test positifs et trois cas de test négatifs, avec un comportement attendu clairement défini.
DisponibilitéPays ou régions où le plugin doit être disponible.
Notes de versionUn bref résumé de ce que vous soumettez et des modifications apportées depuis une éventuelle version précédente.

Créez une soumission de plugin

  1. Ouvrez le portail de soumission de plugins.
  2. Sélectionnez Créer un plugin.
  3. Choisissez le type de soumission :
    • Skills uniquement pour un plugin contenant uniquement des skills.
    • Avec MCP pour un plugin reposant uniquement sur un serveur MCP distant.
    • Avec MCP pour un plugin qui associe un serveur MCP distant à des skills téléversées ou importées depuis MCP.

Le portail enregistre la soumission comme brouillon pendant que vous remplissez le formulaire.

Remplissez le formulaire

Informations

Renseignez les champs de la fiche publique et les informations sur l’éditeur :

  • Nom du plugin : Utilisez le nom du produit ou du workflow présenté aux clients.
  • Descriptions : Expliquez ce que le plugin permet aux utilisateurs de faire. Rédigez une description courte et concise, et utilisez la description longue pour détailler les workflows.
  • Identité du développeur : Sélectionnez l’identité vérifiée de la personne ou de l’entreprise qui publie le plugin.
  • Logo et catégorie : Utilisez les éléments de marque prêts pour la production.
  • URL du site web, de l’assistance, de la politique de confidentialité et des conditions : Utilisez des URL publiques qui correspondent à l’éditeur et expliquent les traitements de données concernés.
Onglet Informations avec les URL de l’éditeur et des politiques renseignées

Avant de soumettre le plugin, vérifiez que vos réponses MCP respectent votre politique de confidentialité. Retirez des réponses des outils les données personnelles inutiles, les secrets d’authentification, les données de débogage, les identifiants internes et les champs liés aux utilisateurs dont la présence n’est pas mentionnée dans cette politique.

MCP

Pour les soumissions avec un serveur MCP distant :

  1. Choisissez le type d’URL du serveur MCP :
    • Choisissez Universelle lorsqu’une même URL fixe de serveur MCP fonctionne pour tous les utilisateurs et toutes les organisations.
    • Choisissez Modèle uniquement lorsqu’OpenAI a approuvé une URL propre à chaque espace de travail, par exemple si chaque client dispose d’un tenant, d’un espace de travail ou d’un point de terminaison MCP géré distinct.
  2. Saisissez l’URL requise :
    • Pour Universelle, saisissez l’ URL du serveur MCP de production.
    • Pour Modèle, saisissez à la fois un Exemple d’URL de serveur MCP et un Modèle d’URL de serveur MCP. L’exemple doit être un point de terminaison réel et fonctionnel qui correspond au modèle et fonctionne avec les identifiants de test fournis.
  3. Configurez l’authentification et, si le serveur exige une connexion, fournissez des identifiants de démonstration utilisables par l’équipe de révision.
  4. Définissez une politique de sécurité du contenu qui autorise précisément les domaines depuis lesquels votre interface récupère des données.
  5. Effectuez la vérification du domaine si le portail affiche une demande Domaine non vérifié. Utilisez une origine HTTPS correspondant au nom d’hôte MCP ou à un nom d’hôte parent, et hébergez le token exact à l’emplacement /.well-known/openai-apps-challenge.
  6. Sélectionnez Analyser les outils.
  7. Examinez les outils détectés, les skills importées, les domaines, les résultats de validation et les métadonnées des outils.
  8. Corrigez les problèmes de serveur, de skills ou de métadonnées, déployez la correction, puis relancez l’analyse.
Onglet MCP après l’analyse d’un serveur MCP de démonstration, avec des recommandations sur les métadonnées

Pour prendre en charge les restrictions de domaine des espaces de travail dans un plugin utilisant OAuth, configurez le serveur d’autorisation pour qu’il annonce un point de terminaison UserInfo qui renvoie la revendication email de l’utilisateur et email_verified: true. Avant la soumission, vérifiez que le fournisseur annonce et active également les portées openid et email. Vous pouvez aussi renvoyer ces revendications dans un token d’identité, mais le point de terminaison UserInfo est obligatoire pour les restrictions de domaine des espaces de travail. Si le fournisseur ne prend pas en charge ces exigences, travaillez avec lui pour ajouter cette prise en charge. Consultez Prendre en charge les restrictions de domaine des espaces de travail.

Modèles d’URL de serveur MCP

La plupart des plugins devraient utiliser l’option Universelle. Les modèles d’URL de serveur MCP sont disponibles uniquement dans certains cas où différents groupes d’utilisateurs ou ensembles de données nécessitent des URL de serveur MCP distinctes. OpenAI prend en charge les URL basées sur un modèle uniquement pour les développeurs de confiance avec lesquels nous entretenons une relation établie. Si OpenAI n’a pas approuvé votre utilisation d’un modèle d’URL, soumettez une URL universelle.

Dans le Modèle d’URL de serveur MCP, utilisez des paramètres de substitution {name} pour les parties que l’administrateur d’un espace de travail configure. Leurs noms doivent commencer par une lettre, contenir uniquement des lettres, des chiffres ou des traits de soulignement, et être uniques au sein de l’URL. Dans l’ Exemple d’URL de serveur MCP , chaque paramètre de substitution doit être remplacé par une valeur réelle.

Par exemple :

Example MCP Server URL: https://acme.example.com/mcp
Template MCP Server URL: https://{workspace}.example.com/mcp

L’URL d’exemple doit être accessible publiquement pendant la révision. Ne saisissez pas d’URL fictive dans le champ Exemple d’URL de serveur MCP . Pour connaître l’ensemble des exigences de révision MCP, consultez Modèles d’URL de serveur MCP.

Ne saisissez pas l’identifiant d’une intégration existante et n’essayez pas de diriger le portail vers une intégration déjà publiée. La soumission doit fournir directement l’URL du serveur MCP et les éléments nécessaires à la révision, même si ce serveur est utilisé par une intégration déjà publiée dans ChatGPT ou Codex.

Vérification du domaine

Pour les plugins avec MCP, vous devez prouver que vous contrôlez le domaine qui héberge le serveur. Lorsque le portail affiche une demande de vérification du domaine, placez le token de vérification exact à l’URL well-known générée :

https://<challenge-base-host>/.well-known/openai-apps-challenge

Le point de terminaison de vérification doit renvoyer uniquement le token de vérification de ce plugin. Ne renvoyez pas de JSON, de liste de tokens ni plusieurs tokens depuis la même URL.

L’ URL de base de vérification est une origine HTTPS facultative qui indique au portail où vérifier le token. Elle doit correspondre au nom d’hôte MCP ou à un nom d’hôte parent. Les chemins sont ignorés. Par exemple, si l’URL du serveur MCP est https://api.example.com/mcp, l’URL de vérification par défaut est https://api.example.com/.well-known/openai-apps-challenge, et https://example.com peut servir d’origine parente pour la vérification si vous pouvez y héberger le token.

Si deux plugins avec MCP partagent le même nom d’hôte et ne diffèrent que par leur chemin, ils partagent aussi la même URL de vérification par défaut. Vous ne pouvez pas les vérifier séparément en indiquant des chemins de tenants différents dans l’URL de base de vérification, car le chemin est ignoré. Utilisez une origine parente capable d’héberger le nouveau token, attribuez un nom d’hôte distinct au serveur MCP ou contactez l’assistance OpenAI si aucune de ces deux options d’hébergement n’est possible.

Si un autre plugin avec MCP utilise déjà le même nom d’hôte, ne remplacez pas son token de vérification existant, sauf si ce plugin n’en a plus besoin. Pour la nouvelle soumission, utilisez une URL de base de vérification sur une origine parente autorisée ou un nom d’hôte MCP distinct.

Chaque outil devrait avoir un nom, une description, des schémas et une structure de sortie clairs. Ajoutez des schémas de sortie lorsqu’ils aident l’équipe de révision et les modèles à comprendre ce que l’outil renvoie.

Définissez les annotations des outils en fonction du comportement réel de chacun :

AnnotationQuand l’utiliser
readOnlyHintDéfinissez la valeur sur true uniquement lorsque l’outil récupère, recherche, répertorie, consulte, prévisualise ou calcule des informations sans rien modifier. Définissez-la sur false si l’outil peut créer, mettre à jour, supprimer, envoyer, ajouter à une file d’attente, exécuter des tâches, démarrer des workflows, écrire dans des journaux ou modifier l’état de toute autre manière.
openWorldHintDéfinissez la valeur sur true lorsque l’outil accède à l’internet public ou à des entités externes sans périmètre délimité, y compris les outils en lecture seule comme la recherche web et les outils d’écriture qui publient, envoient des messages, publient du contenu, poussent du code ou soumettent des formulaires. Définissez-la sur false lorsque l’outil est limité à un compte ou à un espace de travail privé au périmètre défini, même si le service est hébergé à l’extérieur.
destructiveHintPour les outils d’écriture, définissez la valeur sur true si l’outil peut supprimer, écraser, révoquer un accès, envoyer des messages ou des transactions qui ne peuvent pas être annulés, ou entraîner un autre effet irréversible. Sinon, définissez-la sur false.

Pour les détails d’implémentation, consultez Annotations des outils et élicitation. Pour connaître les attentes de l’équipe de révision, consultez les consignes relatives aux rejets liés aux indications de comportement des outils.

Skills

Ajoutez des skills au brouillon de l’une des manières suivantes :

  • Téléversez le bundle final de skills pour les soumissions contenant uniquement des skills ou combinant skills et MCP.
  • Pour une soumission avec MCP distant, importez des skills statiques depuis le serveur MCP. Lorsque vous sélectionnez Analyser les outils, OpenAI les importe dans le brouillon.

Utilisez la même arborescence de fichiers et les mêmes instructions que celles testées localement. Pour importer des skills depuis MCP, suivez les spécifications de l’extension de skills à l’état de projet et du manifeste de ressources statiques.

Onglet Skills prêt pour le téléversement d’un bundle de skills

Chaque skill devrait inclure :

  • Un fichier SKILL.md clair, avec les conditions de déclenchement et les instructions pour la tâche.
  • Tous les scripts, modèles ou ressources référencés.
  • Des instructions limitées au nécessaire, au périmètre bien défini et adaptées à l’objectif du plugin.

OpenAI analyse les skills téléversées et importées depuis MCP pour vérifier leur conformité aux politiques et détecter les risques de sécurité, notamment les informations sensibles, les demandes d’accès inutiles et les instructions susceptibles de compromettre le fonctionnement sûr ou attendu du plugin. Les skills doivent respecter les mêmes normes que le reste du plugin. Si elles échouent à l’analyse automatisée, elles peuvent bloquer la soumission ou nécessiter des corrections.

OpenAI importe les skills depuis MCP sous forme d’instantané au moment de la soumission. Les plugins publiés ne mettent pas ces skills à jour en temps réel. Après avoir modifié une skill sur le serveur, sélectionnez à nouveau Analyser les outils et examinez les skills mises à jour avant de soumettre une nouvelle version du plugin.

Pour supprimer toutes les skills importées depuis MCP, gardez l’extension de skills activée, renvoyez { "skills": [] } sans nextCursor, puis relancez l’analyse. La suppression de l’extension ou le renvoi d’une réponse qui échoue à la validation conserve l’instantané précédent.

Prompts

Ajoutez des prompts de démarrage qui illustrent les workflows les plus utiles du plugin. De bons prompts sont assez précis pour montrer quand utiliser le plugin, tout en restant assez généraux pour que les utilisateurs puissent les adapter.

Exemples :

  • « Examinez les erreurs de passage en caisse survenues depuis la dernière version et résumez les causes profondes probables. »
  • « Créez une synthèse d’incident P1 à partir des derniers tickets d’assistance et des déploiements associés. »
  • « Examinez les journaux des déploiements ayant échoué et recommandez la prochaine étape de débogage. »
Onglet Prompts avec des exemples de prompts de démarrage

Tests

Soumettez au moins cinq cas de test positifs et trois cas de test négatifs.

Pour chaque cas de test positif, incluez les éléments suivants :

  • Le prompt utilisateur.
  • Le comportement attendu de l’outil, du skill ou du workflow.
  • La structure attendue du résultat.
  • Le compte de test ou les données de test prédéfinies nécessaires pour le reproduire.

Pour chaque cas de test négatif, incluez les éléments suivants :

  • Le prompt utilisateur ou le scénario.
  • Le refus, la demande de clarification ou le comportement de repli sûr attendu.
  • La raison pour laquelle le plugin ne doit pas effectuer l’action demandée.

Utilisez des cas de test que les personnes chargées de la révision peuvent exécuter sans connaître votre contexte interne. Si votre plugin nécessite une authentification, vérifiez que les identifiants de démonstration fournis permettent d’effectuer chaque test sans authentification multifacteur (MFA), SMS, confirmation par e-mail ni accès à un réseau privé.

Onglet Tests avec un cas de test pour l’outil roll_dice

Disponibilité géographique

Choisissez les pays ou régions où le plugin doit être disponible. Sélectionnez uniquement les territoires où l’éditeur, le produit, le processus d’assistance et les conditions juridiques sont prêts pour accueillir les utilisateurs.

Onglet Disponibilité géographique pour définir la disponibilité par pays et région

Soumettre

Vérifiez l’intégralité du brouillon avant de le soumettre.

Dans les notes de version, résumez les éléments suivants :

  • Les fonctionnalités du plugin.
  • Le type de soumission : première soumission ou mise à jour.
  • Les changements depuis la dernière version soumise, le cas échéant.
  • Toute information utile aux personnes chargées de la révision concernant les identifiants de test, les données attendues ou la configuration.

Remplissez les attestations de conformité aux politiques uniquement après avoir vérifié l’exactitude de la fiche, du serveur, des skills, des prompts, des tests et de la disponibilité. Sélectionnez ensuite Soumettre pour révision.

Onglet Soumettre avec les notes de version et les attestations finales

Processus de publication publique

La soumission d’un plugin lance sa révision ; elle ne le publie pas immédiatement. Pour le rendre accessible au public, le processus est le suivant :

  1. Soumettez le plugin via le portail de soumission des plugins.
  2. OpenAI examine la soumission. Les délais de révision peuvent varier à mesure qu’OpenAI met en place le processus de révision et augmente sa capacité de traitement.
  3. Une fois le plugin approuvé par OpenAI, le développeur choisit quand le publier et procède à sa publication depuis le portail.
  4. Après sa publication, le plugin apparaît dans l’annuaire universel des plugins, commun à ChatGPT et Codex.

Les plugins contenant uniquement MCP, uniquement des skills ou combinant skills et MCP apparaissent tous dans l’annuaire des plugins.

Fonctionnement des versions publiées des métadonnées MCP

Après la publication, OpenAI récupère régulièrement vos outils MCP. Les outils supprimés sont retirés dès qu’une analyse détecte leur suppression. Les définitions d’outils nouvelles ou modifiées deviennent disponibles après avoir passé avec succès les vérifications automatisées ; lorsqu’une mise à jour est mise en attente, la définition précédente reste active. Consultez Révision continue et mises à jour des outils.

Toute modification des informations soumises sur le plugin ou des skills importés nécessite toujours une nouvelle version, une révision et une publication.

Liste de vérification finale

Avant de soumettre votre plugin, vérifiez les points suivants :

  • La personne qui soumet le plugin dispose d’un accès en écriture à la Gestion des applications .
  • L’éditeur dispose d’une identité de développeur ou d’entreprise vérifiée.
  • Les plugins dotés d’une interface utilisateur définissent une politique de sécurité du contenu pour les domaines exacts depuis lesquels le composant récupère des données.
  • Les noms, descriptions, schémas et annotations des outils correspondent à leur comportement réel.
  • Chaque outil possède des valeurs exactes pour readOnlyHint, openWorldHint et destructiveHint.
  • Les réponses des outils ne contiennent pas de données personnelles superflues, de secrets d’authentification, de charges utiles de débogage, d’identifiants internes ni de champs liés aux utilisateurs dont la présence n’a pas été déclarée.
  • Vous avez testé les skills localement avec l’arborescence finale des fichiers.
  • Les prompts de démarrage illustrent des workflows utilisateur réalistes.
  • La soumission comprend cinq cas de test positifs et trois cas de test négatifs.

Pour une soumission avec un serveur MCP distant, vérifiez également les points suivants :

  • Le serveur MCP utilise une URL de production publique.
  • Les identifiants fournis aux personnes chargées de la révision fonctionnent sans authentification multifacteur (MFA), confirmation par e-mail, confirmation par SMS ni accès à un réseau privé.
  • Les skills importés depuis MCP correspondent au dernier instantané obtenu avec Analyser les outils .
  • Les URL de la politique de confidentialité, des conditions, de l’assistance et du site web sont publiques et correspondent à l’identité de l’éditeur.