このガイドラインは、プラグインの MCP サーバーと任意の UI を対象としています。 スキル、ポータルでの手順、レビュー、承認、 公開を含む申請フロー全体については、 プラグインの申請をご覧ください。
概要
プラグインのエコシステムは信頼の上に成り立っています。ユーザーは、安全で役に立ち、プライバシーが尊重される体験を期待して ChatGPT や Codex を利用します。開発者は、公平で透明性のあるプロセスを期待しています。この開発者向けガイドラインでは、すべての開発者に確認と遵守が求められるポリシーを定めています。
詳細に進む前に、 任意の UI に関するガイドラインをご確認ください。操作、 レイアウト、デザインのパターンを通じて、プラグインの UI を直感的で信頼できるものにし、 ChatGPT 内で一貫した体験を提供するための指針を説明しています。
ChatGPT で優れた体験を実現するための要素に記載されている原則も参考にできます。
以下のガイドラインは、公開済みのプラグインが ChatGPT と Codex で共有される共通ディレクトリに引き続き掲載されるために満たすべき最低基準を示しています。実際の利用で高い有用性とユーザー満足度が認められたプラグインには、ディレクトリ内での配置や先回りした提案などを通じて、ユーザーに届ける機会がさらに広がる可能性があります。
プラグインの基本要件
目的と独自性
プラグインには、明確な目的を持ち、約束したとおりに確実に動作することが求められます。特に、製品の組み込み機能では標準で対応していない機能やワークフローを提供し、会話でよく示されるユーザーの意図を実現するうえで実質的に役立つものであるべきです。
自身が所有しているか、使用許可を得ている知的財産のみを使用してください。誤解を招くデザインや模倣したデザイン、なりすまし、スパム、意味のある操作ができない静的なフレームを使用してはいけません。プラグインが OpenAI によって作成または推奨されているとほのめかしてはいけません。
品質と信頼性
プラグインは、予測可能で信頼できる動作をしなければなりません。結果は正確で、ユーザーの入力に関連するものであるべきです。予期しないエラーも含め、エラーには明確なメッセージやフォールバック動作で対処しなければなりません。
プラグインを申請する前に、MCP サーバー、ツール、任意の UI を幅広いシナリオで十分にテストしてください。プラグインには、安定性、良好な応答性、完成度が求められます。試用版やデモ用のプラグインは受け付けられません。
プラグインの名前、説明、任意のスクリーンショット
プラグインの名前と説明は、明確かつ正確で、わかりやすいものにしなければなりません。一般的すぎる名前、特にブランドとの明確な関連がない、辞書に載っている単語 1 語だけの名前は避けてください。UI があるプラグインでは、スクリーンショットの提出は任意です。UI がないプラグインでは、スクリーンショットを提出しないでください。提出する場合は、プラグインの機能を正確に示し、指定の画像サイズに従う必要があります。
ツール
MCP ツールは、サーバーの機能の使い方を ChatGPT と Codex に伝えます。ツールを明確かつ正確に定義すると、プラグインの安全性が高まり、モデルが理解しやすく、ユーザーも信頼しやすくなります。
明確で正確なツール名
ツール名は、人が読んで理解でき、具体的で、実際の動作がわかるものにしてください。
- ツール名は、MCP サーバー内で一意でなければなりません。
- 動作を直接表すわかりやすい言葉を使い、できれば動詞を用いてください(例:
get_order_status)。 - 誤解を招く表現、過度に宣伝的な表現、比較を含む表現は避けてください(例:
pick_me、best、official)。
動作に即した説明
各ツールには、その目的を明示的かつ正確に伝える説明を含める必要があります。
- 説明には、ツールが何をするのかを記載してください。
- 説明で他のプラグインやサービスを優遇または中傷したり、他のプラグインのツールよりも自分のツールを選ぶようモデルを誘導したりしてはいけません。
- 説明で、ユーザーが明示した意図やプラグインが果たす目的を超えて、過度に広い範囲での呼び出しを勧めてはいけません。
- 説明からツールの動作が明確にわからない場合や、説明が不十分な場合は、プラグインが却下されることがあります。
正しいアノテーション
操作が安全か、追加の注意が必要かを モデルとユーザーが理解できるように、 ツールのアノテーションを正しく設定する必要があります。
- データの取得や一覧表示のみを行い、
会話の外部では何も変更しないツールには、
readOnlyHintアノテーションを付けてください。 - 書き込みや破壊的な操作(作成、更新、削除、投稿、送信など)を行うツールは、
readOnlyHintとdestructiveHintを使用して明示的に識別できるようにする必要があります。 - 読み取り専用のウェブ検索など、公開インターネットや
範囲が限定されていない外部の対象にアクセスするツールでは、
openWorldHintをtrueに設定してください。 アクセス先が特定の非公開アカウントやワークスペース内に限定されるツールでは、 そのサービスが外部でホストされていても、falseに設定できます。 - 操作ラベルの誤りや欠落は、却下のよくある原因です。
readOnlyHint、openWorldHint、destructiveHintのアノテーションが正しく設定されていることを再確認し、プラグインの申請時には、それぞれの設定理由を詳しく説明してください。
目的に即した最小限の入力
ツールが要求する情報は、タスクの完了に必要な最小限にとどめてください。
- 入力フィールドは、ツールが明示する目的に直接関連している必要があります。
- 「念のため」という理由で、会話履歴全体、未加工のチャット記録、広範なコンテキストを求めるフィールドを要求してはいけません。ユーザーの意図を示す 簡潔で、タスクに特化した フィールドをツールが要求できるのは、実行の質を実質的に高め、かつデータ収集の範囲がユーザーのリクエストへの対応とプライバシーポリシーに記載された目的のために合理的に必要な範囲を超えない場合に限ります。
- 位置情報が必要な場合は、システムから共有されるおおまかな地理的位置を利用してください。ユーザーの正確な位置情報(GPS 座標や住所など)を要求してはいけません。
予測と監査が可能な動作
ツールは、名前、説明、入力が示すとおりに動作するようにしてください。
- 副作用を隠したり、暗黙のものにしたりしてはいけません。
- ツールが現在の環境の外部にデータを送信する場合(コンテンツの投稿やメッセージの送信など)は、そのことがツールの定義から明確にわかる必要があります。
- ツールは、可能な限り安全に再試行できるようにしてください。再試行によって同じ処理の影響が重複して生じる可能性がある場合は、そのことを明示してください。
入念に設計されたツールは、予期しない動作を減らし、ユーザーを保護し、レビュープロセスを迅速化するのに役立ちます。
認証と権限
MCP サーバーが認証を必要とする場合、そのフローは透明で明確なものでなければなりません。要求するすべての権限をユーザーに知らせ、要求する範囲はプラグインの動作に必要なものに限定する必要があります。
テスト用の認証情報
認証が必要な MCP サーバーを含むプラグインを申請する際は、サンプルデータがあり、すべての機能を利用できるデモアカウントのログイン ID とパスワードを提供してください。新規アカウントの登録や、アクセスできないアカウントを介した 2FA など、追加のログイン手順を必要とするプラグインは却下されます。
商取引と収益化
現在、プラグインで商取引が認められるのは 物理的な商品のみです。サブスクリプション、デジタルコンテンツ、トークン、クレジットなど、デジタル商品やサービスの販売は、直接的か間接的か(フリーミアムからのアップセルなど)を問わず認められません。
ユーザーは既存の有料アカウントにサインインし、契約中のサブスクリプションに含まれる機能を利用できます。プラグインでサブスクリプションプランを表示したり、新しいサブスクリプションの契約手続きを開始したり、アップグレードを促したりしてはいけません。
プラグインの特定の機能を利用するために、ユーザーの現在のプランや利用権とは異なるもの(別のサブスクリプション階層や追加のクレジットなど)が必要な場合、プラグインはそのことを説明できます。この情報は、その機能を利用できない理由をユーザーが理解するためのものであり、決済や取引のフローを開始するものであってはいけません。
具体的には、プラグインで次のことが認められます。
- ユーザーの現在のプランや利用権では、特定の機能を利用できないことの説明
- 利用可能なプランや利用権の選択肢を説明する情報ページへのリンク
プラグインでは、次のことは認められません。
- 決済ページやその他の取引ページへの直接リンク
- アップグレード、サブスクリプションの契約、購入の完了に向けた手続きを明示的に開始するページへのリンク
プラグインは、ChatGPT 内で質の高い体験を提供するようにしてください。プラグインと同じ機能を外部のウェブサイトやアプリケーションでも提供している場合、プラグインで提供する機能の質をそれより低くしてはいけません。ChatGPT 経由でサービスを利用するユーザーが不利になるような、ChatGPT 固有の手数料、追加料金、その他の料金設定を適用してはいけません。他のプラットフォームで期間限定の割引やキャンペーンを実施することは認められます。
また、以下の商品やサービスの販売、宣伝、取引の促進、または提供や利用を実質的に可能にするために、プラグインを使用してはいけません。
禁止商品
- 成人向けコンテンツと性的サービス
- ポルノ、露骨な性的表現を含むメディア、ライブカメラサービス、成人向けサブスクリプション
- 大人のおもちゃ、セックスドール、BDSM 用具、フェティッシュ製品
- ギャンブル
- 実際の金銭を賭けるギャンブルサービス、カジノクレジット、スポーツ賭博、暗号資産カジノのトークン
- 違法薬物・規制薬物
- 大麻・THC 製品、シロシビン、違法物質
- THC 含有量が法定上限を超える CBD 製品
- 薬物関連器具
- ボング、ダブリグ、薬物用の計量器、薬物用途をうたって販売される大麻栽培器具
- 処方薬・年齢制限のある医薬品
- 処方箋が必要な医薬品(インスリン、抗生物質、Ozempic、オピオイドなど)
- 年齢制限のある処方薬(テストステロン、HGH、不妊治療用ホルモン剤など)
- 不正な商品
- 偽造品や模倣品
- 盗品や出所が不明な商品
- 金融詐欺用のツール(スキマー、偽の POS 端末)
- 海賊版作成ツールやクラックされたソフトウェア
- 野生生物保護や環境保護に関する禁制品(象牙、絶滅危惧種を使用した製品)
- マルウェア、スパイウェア、監視
- マルウェア、ランサムウェア、キーロガー、ストーカーウェア
- 秘密裏に監視するための機器(スパイカメラ、IMSI キャッチャー、隠し追跡装置)
- たばこ・ニコチン
- たばこ製品
- ニコチン製品(電子たばこ、電子たばこ用リキッド、ニコチンパウチ)
- 武器・有害物質
- 銃器、弾薬、銃器の部品
- 爆発物、花火、爆弾製造用の材料
- 違法または年齢制限のある武器(飛び出しナイフ、メリケンサック、禁止地域でのクロスボウ)
- 護身用の武器(ペッパースプレー、スタンガン、テーザー銃)
- 過激主義に関連する商品や宣伝物
禁止対象となる詐欺的、欺瞞的、または高リスクのサービス
- 偽の身分証明書、偽造文書、文書改ざんサービス
- 債務救済、信用情報の修復、信用スコアの操作を目的とするスキーム
- 規制を受けていない金融サービス、欺瞞的な金融サービス、悪質な金融サービス
- ユーザーを搾取するための融資、前払い手数料、信用履歴の構築に関するスキーム
- 投機、消費者への欺瞞、金銭的搾取を伴う暗号資産や NFT の提供
- 送金、暗号資産の移転、投資取引の実行
- 行政サービスの悪用、なりすまし、給付の不正操作
- 個人情報の盗用、なりすまし、悪用を可能にする個人情報監視サービス
- 詐欺、義務の回避、虚偽表示を助長する一部の法律サービスやそれに準ずるサービス
- 明示的に拒否しない限り課金される方式、テレマーケティング、同意を回避するスキーム
- チャージバックが多発する旅行サービス、詐欺が起こりやすい旅行サービス、悪質な旅行サービス
購入手続き
プラグインでは外部の購入手続きを使用し、自社のドメインで購入を完了するようユーザーを誘導してください。
現在ベータ版の Instant Checkout は、一部のマーケットプレイスパートナーのみが利用できます。今後、ほかのマーケットプレイスや小売業者にも対象が広がる可能性があります。
それまでは、標準的な外部の購入手続きを使用する必要があります。それ以外のサードパーティ製決済ソリューションをプラグインの UI 内に埋め込んだり、ホストしたりすることはできません。詳細は、Agentic Commerce のドキュメントをご覧ください。
広告
プラグインで広告を配信したり、広告媒体としての利用を主な目的としたりしてはいけません。すべてのプラグインは、単独でユーザーに価値を提供する、明確で正当な機能を備える必要があります。
安全性
使用に関するポリシー
OpenAI の使用に関するポリシーで禁止されている活動を行ったり、助長したりしないでください。プラグインは、ユーザーを危害、詐欺、悪用のリスクにさらすおそれのある高リスクの動作を避ける必要があります。
ポリシー要件の変更を把握し、継続的に遵守してください。承認済みのプラグインでも、後から違反が判明した場合は削除される可能性があります。
対象年齢への適合性
プラグインは、13~17 歳のユーザーを含む一般のユーザーに適したものである必要があります。13 歳未満の子どもを明示的な対象にすることはできません。成人向け(18 歳以上)の体験には、適切な年齢確認と制御の仕組みが整い次第、対応する予定です。
ユーザーの意図の尊重
ユーザーのリクエストに直接応える体験を提供してください。無関係なコンテンツを挿入したり、やり取りの方向を変えようとしたりしないでください。また、データの収集は、ユーザーのリクエストを満たすために合理的に必要で、プライバシーポリシーに沿った範囲にとどめてください。
公正な競争
プラグインは、ツールレベルでもプラグインレベルでも、説明、タイトル、ツールアノテーション、その他のモデルが読み取れるフィールドに、ほかのプラグインやそのツールの選択・使用方法を操作する内容(特定のプラグインをほかより優先するようモデルに指示するなど)や、公正に発見される機会を妨げる内容を含めてはいけません。すべての説明は、ほかの選択肢をおとしめることなく、プラグインの価値を正確に伝える必要があります。
サードパーティのコンテンツと連携
- 許可されたアクセス: 適切な許可を得て、相手方の利用規約を遵守したうえでなければ、外部ウェブサイトのスクレイピング、クエリの中継、サードパーティ API との連携を行ってはいけません。
- 非公式コネクタ: データをそのまま中継するソフトウェア層を含め、サードパーティサービスへの非公式コネクタとして主に機能するプラグインは承認できません。
- 制限の回避: サードパーティが設けた API の制限、レート制限、アクセス制御を回避しないでください。
iframe と埋め込みページ
UI を備えたプラグインでは、自身の MCP サーバーの登録可能ドメインに属するページを埋め込むことができ、
既存のエディターや管理画面もそのまま埋め込めます。たとえば、
https://api.example.com/mcp のサーバーは https://app.example.com を埋め込めます。どちらも
登録可能ドメイン example.com を使用しているためです。共有ホスティングサービス上の異なるテナントは、
別々のドメインとして扱われます。同じホスティングプロバイダーを利用しているだけでは、
所有権の証明にはなりません。
リソースの CSP で、
_meta.ui.csp.frameDomains(または従来の
_meta["openai/widgetCSP"].frame_domains)を使用して、必要な iframe のオリジンをすべて宣言してください。サードパーティのドメインについては、
埋め込みによる機能や操作が不可欠な場合に限り、iframe で埋め込むようにしてください。
iframe を使用するプラグインを申請する際は、引き続き、その使用を正当化する理由を示す必要があります。各埋め込みページの機能、プラグインに埋め込む理由、ドメインの管理者を説明してください。iframe の使用には追加のレビューやエスカレーションが必要になる場合があり、内容を評価できない場合は承認に時間がかかったり、却下されたりすることがあります。MCP サーバーと同じドメインを使用していても、承認が保証されるわけではありません。
埋め込みページにも、 決済とプライバシーに関する要件を含め、その他すべてのプラグイン要件が引き続き適用されます。
プライバシー
プライバシーポリシー
プラグインの提出時には、公開済みの明確なプライバシーポリシーを含める必要があります。少なくとも、収集する個人データの種類、利用目的、提供先の区分、データの保持期間、ユーザーが利用できる管理手段を説明してください。このポリシーを常に遵守してください。ユーザーはプラグインをインストールする前に、プライバシーポリシーを確認できます。
データ収集
- 収集の最小化: ツールの機能を実行するために必要な最小限のデータのみを収集してください。入力項目は具体的かつ範囲を絞ったものにし、タスクとの関係を明確にしてください。「念のため」の項目や広範なプロフィールデータは避けてください。入力スキーマは、任意のコンテキストを集める仕組みではなく、デフォルトでデータ収集を制限する設計にしてください。
- レスポンスの最小化: ツールのレスポンスでは、ユーザーのリクエストとツールが明示する目的に直接関係するデータのみを返す必要があります。ユーザーの問い合わせに応えるために不可欠な場合を除き、セッション ID、トレース ID、リクエスト ID、タイムスタンプ、ログのメタデータなど、診断情報、テレメトリ、内部識別子を含めないでください。
- 制限対象データ: 次の種類の制限対象データを収集、要求、処理してはいけません。
- ペイメントカード情報のデータセキュリティ基準(PCI DSS)の対象となる情報
- 保護対象保健情報(PHI)
- 政府発行の識別番号(社会保障番号など)
- アクセス用の認証情報と認証用シークレット(API キー、MFA/OTP コード、パスワードなど)
- 規制対象の機微データ: 収集先の法域で「機微」または「特別カテゴリー」とされる個人データは、次の条件をすべて満たす場合を除き、収集してはいけません。ツールが明示する機能の実行に収集が不可欠であること、ユーザーから法的に十分な同意を得ていること、収集時またはそれ以前に、収集と利用について明確かつ目立つ形で開示していることが必要です。
- データの境界:
- 入力スキーマで位置情報の値(都市や座標など)を直接要求することは避けてください。位置情報が必要な場合は、適切なポリシーと同意の管理を適用できるよう、クライアントが管理する別経路(環境メタデータや参照先リソースなど)を通じて取得してください。これにより、個人を特定できる情報(PII)の意図しない取得を減らし、最小権限でのアクセスを徹底できます。また、位置情報の取り扱いを監査可能にし、許可を取り消せる状態に保てます。
- MCP サーバーは、クライアントやその他の場所からチャットログ全体を取得、再構成、推測してはいけません。クライアントまたはモデルが送信を選択した、明示的な抜粋とリソースのみを処理してください。この分離によって、扱うデータが知らないうちに拡大するのを防ぎ、意図的に共有されたコンテンツだけに分析を限定できます。
透明性とユーザーによる管理
- データの取り扱い: 監視、追跡、行動プロファイリングは、その実施を明確に開示し、対象範囲を限定し、ユーザーが実効性のある管理を行えるようにしたうえで、OpenAI の使用に関するポリシーに準拠する場合を除き、行ってはいけません。これには、タイムスタンプ、IP アドレス、クエリのパターンなどのメタデータ収集も含まれます。
- 正確なアクションラベル: 外部の状態を変更する(作成、変更、削除する)ツールはすべて、書き込みアクションとして明示してください。読み取り専用アクションとして明示できるのは、副作用がなく、安全に再試行できるツールだけです。破壊的なアクションには、明確なラベルと、確認などの一手間を設ける必要があります。これにより、クライアントは実行前にガードレール、承認、確認、またはプロンプトを適用できます。
- データの不正流出の防止: 現在の境界の外にデータを送信するアクション(メッセージの投稿、メールの送信、ファイルのアップロードなど)はすべて、書き込みアクションとしてクライアントに明示する必要があります。これにより、クライアントはユーザーに確認を求めたり、プレビューモードで実行したりできます。意図しないデータ漏えいを減らし、サーバーの動作をクライアント側のセキュリティ上の想定に合わせることができます。
開発者の本人確認
本人確認
プラグインを提出できるのは、確認済みの個人または組織のみです。OpenAI Platform ダッシュボードの一般設定では、本人確認と、公開時に代表する企業への所属確認を行えます。虚偽の申告、隠された動作、仕組みを不正に利用する試みがあった場合、プログラムから除外されることがあります。
サポートの連絡先
エンドユーザーが支援を求める際に連絡できる、カスタマーサポートの連絡先を提供する必要があります。この情報は正確かつ最新の状態に保ってください。