0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ChatGPT内でサービスを提供する方法を試してみる(ChatGPT Apps SDK)

Posted at

2025年10月に、ChatGPT内でサービスを提供できる仕組み「ChatGPT向けアプリ」がアナウンスされました。2026年1月現在利用できるアプリは数十個程度で、誰もが知っているような欧米系SaaSのみといった感じです。

アプリを公開して誰でも使えるようにするにはOpenAIの審査が必要ですが、自分のChatGPTアカウントに閉じてテストするだけであれば審査等なしに簡単に行うことができるので、今回試してみました。

作ったもの

架空のオンラインスーパーです。ChatGPTとの会話の流れで自分のアカウントのカートに商品を追加することができます。
自由に触ってみてください。

動画

URL

  • ログインID: 任意の文字列(user_1111など)、パスワード: 1234Qwerでログインできます
  • ログインID単位でデータが分離されるようになっています
  • データはすべてメモリに保持しており、サーバはアクセスが無いとシャットダウンされますので、何も永続化されません
  • ChatGPT内で利用する方法は下記GitHubのREADMEをご覧ください

GitHub

ChatGTPアプリとは

ChatGPTでAIと会話する流れの中で任意のサービスを提供するための仕組みです。ユーザーは事前にアプリの利用設定をしておくことで、ChatGPTとの会話の中でアプリの機能を利用することができます。

ユーザーが「●●アプリを使用して」などとAIに明示的に指示することもできますし、逆にAIが文脈を察してアプリの利用を提案することもあるようです。

リーチ可能なユーザー

無料プランを含むすべてのユーザーがアプリを利用可能です。

2025年のニフティの調査だと小中学生の約55%がChatGPTを利用したことがあるらしいですし、子供でなくても日常の検索行動でChatGPTを使う人は周りを見ていても増えているように感じます。
早めにAI時代におけるサービス提供の仕方を考えて損はないように思います。

ChatGTPアプリでできること

ChatGTPによる任意の機能の呼び出し

ChatGPTアプリに限った話ではないですが、提供したい機能をMCPサーバーとして用意しておくことで、ChatGPTが必要に応じて機能を呼び出すことができます。

認証が必要な機能も提供することができ、その場合はMCPサーバー・認証サーバーがOAuth2.1に準拠している必要があります。(正確に言うとOAuth2.1以外にもいくつか従うべきものがあります

ChatGPT UI上に任意のUIを表示

MCPサーバーから特定の形式でHTMLを返すことで、ChatGPTのUI上に任意のUIを表示することができます。

UIは、ChatGPTのガイドラインに沿ったものである必要があり、またiframe内に描画されることになるので、何でも自由に表示できるという感じではありません。

UIは下記3つの表示モードから選ぶことができます

  • Inline
    チャットの吹き出しと同じように、チャットの流れに流れていく小さなUI
  • Fullscreen
    文字通りフルスクリーン。フルスクリーンのアプリ画面の中でユーザーは引き続きAIと会話することができる。
  • Picture-in-picture (PiP)
    チャットの上部に固定で表示される。チャットの内容に応じてインタラクティブに表示する内容を変えることができる。

詳細はガイドラインを見ていただくのが良いかと思います。

アプリを作るために必要なこと

既存サービスをChatGPT上で提供することを想定すると、主に以下のようなことが必要になります。意外と面倒です。

  • ChatGPT上で提供したい機能をMCPサーバーの形で実装する
  • 認証が必要な機能の場合、MCPサーバー・認証サーバーをMCPの標準に準拠した認証方式に対応できるようにする
    • 認証サーバーにOuth0などのサービスを利用している場合は比較的楽に対応できそう
  • ChatGPT上でUIを表示させたい場合、専用のUIを実装しMCPサーバーからResourceとして提供できるようにする

実際にアプリを作ってみて思ったこと

良い点

  • チャットAIが一般に普及する中で、ユーザーにどのような形でサービスを提供していくべきかを考える良い機会になる
  • チャットAIの中で別サービスにアクセスするという概念が一般のユーザーにはまだあまり浸透していないように思うので、もし良いアプリが提供出来たら話題にできそう

懸念点

  • エコシステムが未熟で、一度アプリを作ってもその後のメンテナンスが大変そう
    • ChatGPT Apps SDKの基盤となるMCPの仕様は、まだ半年に1回くらいのペースで大きな変更が入る
    • MCPの仕様自体が依存する仕様がまだdraftだったりする(OAuth Client ID Metadata Documentとか)
    • MCPのSDK使いづらいしドキュメントもあまりない。example codeを見て自分で使い方を知ってねスタイル
    • window.openaiの仕様についてもドキュメントがあまりない。example codeを見ないと分からない挙動がある
  • 脆弱性
    • MCPに限らず、AI独断で不可逆的な操作(例:送金、メッセージの送信等)が可能な状況というのは脆弱性を孕む。(WhatsAppの話とか)
      • 悪者にAIを操作されて想定外の使われ方をしたとしても問題ない機能のみを提供するのが安全そう
  • 意外と面倒
    • ローカルのみで動く適当なMCPを作るだけなら一瞬でできるが、認証を備え、ちゃんとサービスとしてMCPを公開するのは実装も面倒だし運用も大変そう
0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?