claude.aiおよびChatGPTコネクタ
管理画面での場所: System › Settings › API & AI agents (
/agent/keys)、Connected appsタブ。同意画面は、コネクターがアクセスを要求した際に/agent/consentで開きます(メニューにはありません)。
動作内容
Web AIアプリはディスクからキーを読み取ることはできません。OAuthを通じて接続します。パネルのMCP URLを追加すると、アプリはあなたを自身の管理画面へ誘導してサインインさせ、アプリの実行内容と有効期限を選択すると、アプリは短命なトークンを受け取ります。キーのコピーや貼り付けは行われません。アプリはいつでも切断できます。
claude.aiのカスタムコネクター、ChatGPTの開発者モード用コネクター、および動的クライアント登録をサポートするその他のMCPクライアントでこれを使用します。コマンドラインツールでも同じフローを使用できますが、それらにはadmin API keyの方がよりシンプルです。
要件
| 項目 | 要件 |
|---|---|
| URL | https://cloud.example.com/mcp/admin、インターネットから到達可能であること(ベンダーのサーバーが接続します)。 |
| リバースプロキシ | パネルの前段に独自のプロキシを配置する場合は、/mcp/admin、/oauth-admin/および/.well-known/のパスをパネルへ転送する必要があります。 |
| あなた | 同意画面で使用するのと同じブラウザーで、NexCMP管理画面にサインインしていること。 |
| クライアント | Streamable HTTPによるMCP、PKCE(S256)を用いたOAuth 2.1、および動的クライアント登録をサポートしています。 |
接続
- AIアプリでカスタムMCPコネクターを追加し、
https://cloud.example.com/mcp/adminを貼り付けます。claude.aiではコネクター設定(カスタムコネクターの追加)にあり、ChatGPTでは開発者モード(MCPコネクターの追加、認証はOAuth)にあります。 - アプリでSign in(または「Connect」)を選択します。ブラウザーでNexCMP管理画面の同意画面が開きます。サインインしていない場合はまずサインインしてください。画面はその後に継続されます。
- 「Example AI app wants to manage this NexCMP admin」(要求しているアプリの名前)というカードと、送還先の住所を確認します。
- 付与するスコープにチェックを入れます。アプリが要求したものはあらかじめチェックが入っています。何も要求されなかった場合は、
admin:readのみがチェックされます。Scopesをご覧ください。 - 接続の持続期間を選択します:7日、30日、または90日(デフォルトは30日)。
- Allowをクリックします。ブラウザーがアプリに戻り、接続が完了します。拒否するにはDenyをクリックします。

::: important キーと同様にスコープを選択する 目的を達成できる最小限のセットを付与してください。金額、削除、セキュリティのアクションはプレビューで停止し、あなたの承認が必要ですが、settings:writeを持つ接続ではブランド名やメールアドレスが変更される可能性があります。 :::
管理と取り消し
System › Settings › API & AI agents › Connected appsを開きます。テーブルには、接続したすべてのアプリ(アプリケーション、スコープ、接続日時、有効期限、最終使用日時)が一覧表示されます。
アプリを切断するには、Revokeをクリックして確認します。そのトークンは即座に無効になり、アプリは再接続するために再び同意画面を経由する必要があります。

フローの仕組み
| ステップ | Detail |
|---|---|
| 検出 | アプリは/.well-known/oauth-protected-resource/mcp/admin、次に/.well-known/oauth-authorization-server/oauth-adminを読み取ります。発行者はhttps://cloud.example.com/oauth-adminです。 |
| 登録 | アプリ自身を登録します(POST /oauth-admin/register、RFC 7591)。パブリッククライアントのみがサポートされています(クライアントシークレットはありません)。リダイレクトアドレスはhttps、または同一コンピューター上の場合はhttp(ループバック)である必要があります。 |
| 認可 | GET /oauth-admin/authorize(PKCEメソッド: S256)。送信される場合、resourceパラメータはこのパネルの/mcp/admin URLである必要があります。リクエストは10分間有効で、開始したブラウザに紐付けられます。 |
| 同意 | スコープと有効期間を選択します(上記)。認可コードの有効期限は60秒で、1回のみ有効です。 |
| トークン | POST /oauth-admin/tokenは、アクセストークン(ak_o...キー、有効期限1時間、または接続終了時のいずれか早い方)とリフレッシュトークン(akr_...)を返します。リフレッシュごとに新しいリフレッシュトークンが発行され、古いトークンは無効になります。接続は選択した日数後に終了します。 |
| 取り消し | 「Connected apps」でRevokeを実行するか、アプリからPOST /oauth-admin/revoke(RFC 7009)を呼び出します。 |
アクセストークンは、付与したスコープを持つ管理者キーと同様に動作します(同一のスコープルール、確認、レート制限、アクティビティログが適用されます)。その呼び出しはActivityタブに表示されます。
確認
- アプリで「run system_health」(または「what tools do you have?」)と入力します。スコープで許可されているツールがアプリに一覧表示されます(the tool list)。
- Connected appsを開きます。Last usedが更新されます。
- Activityを開きます。呼び出し履歴にアプリの名前と
mcpが記載されて一覧表示されます。
制限と注意事項
- 1時間経過後にアプリが再度サインインを求める場合、クライアントがリフレッシュを行わない通常の動作です。再接続してください。
- リフレッシュトークンが2回使用された場合は盗難とみなされ、接続全体が取り消されます。アプリから再接続してください。
- 2回使用された認可コードは拒否され(
invalid_grant)、すでに発行済みのトークンは取り消されます。 - OAuthアクセスはスコープルールの制限を超えることはありません。what a key can never doは接続されたアプリにも適用されます。
- ベンダーによりメニューやサポート内容は変更されます。ベンダーのアプリが現在のプランでカスタムコネクタを提供していない場合は、代わりにデスクトップまたはコマンドラインクライアントでadmin API keyを使用してください。
トラブルシューティング
| 症状 | 原因 | 対処法 |
|---|---|---|
| 同意画面に「Wrong browser」と表示される | サインインしているブラウザとは別のブラウザでリクエストが開始された | 同じブラウザ上のAIアプリから接続をやり直してください。 |
| 同意画面にリクエストの期限切れまたは欠落が表示される | 10分以上経過したか、リンクが2回開かれた | AIアプリから接続をやり直してください。 |
| 「Unknown client」または「redirect address does not match」ページが表示される | アプリの登録情報が古いか、登録されていないリダイレクトアドレスが使用されている | アプリ内でコネクタを削除し、再度追加してください。 |
invalid_target | resource に送信された値がこのパネルの /mcp/admin URL と一致しない | Connect an AIタブに表示されている正確なURLを使用してください。 |
invalid_request about PKCE | クライアントが code_challenge_method=S256 を送信していない | PKCEをサポートするOAuth 2.1対応のクライアントを使用してください。 |
アプリは接続されるが、呼び出し時に insufficient_scope が返される | そのスコープにチェックが入っていなかった | 接続を取り消し、該当のスコープにチェックを入れて再度接続してください。 |
| アプリがURLに到達できない | DNS、TLS、またはリバースプロキシによって /mcp/admin、/oauth-admin/、/.well-known/ がブロックされている | プロキシのルールを確認してください。 |