ai

Auth0 MCP サーバー公開

公式な Auth0 MCP サーバーを公開しました。MCP ホストは自然言語を使って、Auth0 テナントのリソースを安全に管理できるようになります。

Jul 15, 20253 min read

本記事は 2025年4月17日 に更新された「The Auth0 MCP Server is here!」を翻訳した記事です。

TL;DR: 公式の Auth0 MCP サーバーが利用可能になりました。Claude Desktop、Cursor、Windsurf およびその他の MCP クライアントを使用して、自然言語で Auth0 テナントを安全に管理する方法を紹介します。詳細は Get Started ガイド を確認ください。

Auth0 を使用することで開発者がアプリケーションをより簡単に保護できるようになることを目指しています。

あなたは AI ツールを使用して、コードのテスト、ドキュメントの作成、新しいコンセプト検証のアプリを作成するバイブコーディング (Vibe Coding) をしているとします。お気に入りの AI ツールに次のように指示することを想像してみてください。:

「パスキーと Google サインインを備えたモバイルアプリを作成し、これらのスコープで API にアクセスしたいです…」

そうすると、Auth0 が自動的に全てを設定します。

そんなことが今、可能になりました。

Auth0 MCP サーバー を紹介します。これにより、Claude Desktop、Cursor、Windsurf、その他の MCP クライアント といった AI ツールが、Model Context Protocol (MCP) を通じて自然言語を使用して Auth0 テナントを安全に設定できるようになります。

Auth0 MCP サーバーを使用すると、認証情報を公開することなく、Auth0 ダッシュボードを操作するために開発作業を中断することなく、アプリケーションの作成、API の設定、Auth0 Actions のデプロイといったタスクを任せられるようになります。

MCP 自体はあくまで橋渡しであり、本当に重要なのは これによりAuth0 をいかに簡単に設定できるかということです。

もし、MCP についての一般的な内容や MCP において認証認可が果たす役割について理解したい場合は、次のガイドを読んでください。

 MCP 入門と認可
MCP 入門と認可

Add commentMore actionsModel Context Protocol (MCP) とその認可の仕組みについて紹介します。 API キーや OAuth 2.1 の実装方法、安全な LLM の API 接続のためのベストプラクティスも紹介します。

Auth0 MCP サーバーとは?

MCP は、AI アプリケーションが LLM にコンテキストを渡すための方法を標準化するオープンプロトコルです。Auth0 MCP サーバーを使用すると、MCP をサポートしているお好みの AI クライアントで以下のようなコマンドを使用できます。:

「staging-app という名前の新しい Auth0 アプリケーションを、コールバック URL は https://staging.example.com/callback で作成してください。」

Auth0 MCP サーバーは MCP 形式でリクエストを受信し、OAuth 2.0 を通じて安全な認証、スコープ設定で設定された権限に基づき、リクエストを Auth0 Management API 呼び出しに変換します。

Auth0 MCP サーバがどのように動作するかについての図

これにより、API トークン自体や Auth0 Management API への直接アクセスを渡すことなく、MCP をサポートしている AI ツールに Auth0 の管理操作を委任できます。

Auth0 MCP サーバーでできること

Auth0 MCP サーバーを使用すると、AI ツールで以下のことを行えます。

  • アプリケーションの一覧取得と管理 – テナント内のアプリケーション(Webアプリ、ネイティブ、SPA)の一覧、作成、更新。
  • API (リソースサーバー)の一覧取得と管理 – テナント内の API の一覧、作成、更新。
  • Actions の一覧取得と管理 – テナント内の Auth0 Actions の一覧、作成、更新。
  • Forms の一覧取得と管理 – テナント内の Auth0 Forms の一覧、作成、更新。
  • ログの操作 – テナント内のログ取得と検索。

これらの機能により Claude Desktop や Cursor などが Auth0 のアシスタントとして機能し Auth0 の設定を行うことで、Auth0 によるアプリケーションの保護を素早く実施できます。例えば、Cursor でアプリケーションを開発しながら 1 つのメッセージで指示するだけで、必要な Callback URL と Logout URL が設定された Auth0 のアプリケーション設定を作成できます。

Auth0 MCP サーバーの主な機能

セキュアな認証

デバイス認可フローを使用し、サポートされているすべてのAIツールにスコープが限定された Auth0 アカウントへのアクセスを許可できます。これにより、AI ツールのプロンプトで、アプリケーション、API、Auth0 Actions などを管理できます。

認証情報の保護

認証情報をシステムのキーチェーンへ安全に保存し、不正なアクセスを防ぎます。保存された Auth0 のアクセストークンとリフレッシュトークンには、Auth0 MCP サーバーのみがアクセスできます。

包括的なツール

Auth0 テナントを管理するための一連の操作をサポートします。Auth0 で保護する API やアプリケーションの設定に対して CRUD操作、テナント単位の Auth0 Actions のデプロイなどを Management API を通じて行えます。利用可能な操作の全リストは こちら を確認してください。

シームレスな連携

標準の Model Context Protocol に対応しており、サポートしている MCP クライアントと直接連携できます。Auth0 MCP サーバーのセットアップを行うと、必要な全ての設定が完了するので Claude Desktop、Cursor、Windsurf ですぐにプロンプトを開始できます。

Auth0 MCP サーバーの仕組み

Auth0 MCP サーバーは、内部で MCP JSON スキーマと Auth0 Management API を橋渡しする役割を果たします。

Auth0 MCP サーバーで行うデバイス認可フロー

Auth0 MCP サーバーを初期化すると、デバイス認可フローが開始されます。ブラウザのウィンドウが開き、Auth0 での認証とテナントの選択をします。認証後、認証情報は OS に応じてシステムのキーチェーンや同等の仕組みに安全に保存されます。設定が完了すると、サポートされている AI ツールを介して Auth0 を操作でき、その際に API キーをコピーなどは必要ありません。

Auth0 同意画面

どのツールを使用していても、すべて上記と同様の手順を行います。

Auth0 MCP サーバーの始め方

Auth0 MCP サーバーを使い始めるには、以下の手順を行います。

前提条件

インストールと設定

1 つのコマンドで Auth0 MCP サーバーをインストールし、初期化します。:

npx @auth0/auth0-mcp-server init

次に、AI ツールを再起動して更新を反映させます。これで完了です。

ターミナルでの ‘npx @auth0/auth0-mcp-server init’ の実行結果

初期化により、以下が実行されます。:

  1. デバイス認可フローが開始されます。
  2. ブラウザを開き、Auth0で認証し、同意画面で希望の Auth0 テナントを選択し、権限を確認します。
  3. 認証情報(Auth0アクセストークンとリフレッシュトークン)がシステムのキーチェーンに安全に保存されます。
  4. Claude Desktop で Auth0 MCP サーバーを利用するための設定を作成します。

保存される認証情報は Auth0 アクセストークンとリフレッシュトークンであるため、MCP サーバーを使用するたびに認証する必要はありません。アクセストークンの有効期限が切れた際は、サーバーが新しいものを取得します。さらに、現在使用しているテナントを変更したい場合は、再度initコマンドを実行すると、別のテナントを選択できます。

使用している MCP ホスト(例: Claude Desktop)は、プロンプトに基づいて使用したい MCP サーバーを識別します。その後、MCP ホストは設定ファイルを使用して、その MCP サーバーと連携します。Claude Desktop 用の設定ファイルは以下のようになります。:

{
  "mcpServers": {
    "auth0": {
      "command": "npx",
      "args": [
        "-y",
        "@auth0/auth0-mcp-server",
        "run"
      ],
      "capabilities": [
        "tools"
      ],
      "env": {
        "DEBUG": "auth0-mcp",
        "PATH": "..."
      }
    }
  }
}

他のクライアントの設定方法については、こちらのドキュメントを確認ください。

次に、Auth0 MCP サーバーと Cursor を使用して FastAPI ウェブアプリを保護する場合の動きを見てみましょう。:

  1. 次のようにクライアントに Cursor を指定して、Auth0 MCP サーバーを初期化します。
npx @auth0/auth0-mcp-server init --client cursor

そして、認証とテナントの選択を実行します。

  1. Cursor を開き、通常どおり FastAPI でウェブアプリを実装し、Auth0 を使用して保護します。
  2. 実装後、Cursor のプロンプトで次のように新しい Auth0 アプリケーション設定の作成を指示します。:

    “'My FastAPI App' という名前で新しい Auth0 アプリケーションを作成してください。コールバック URL は http://localhost:4040/callback、許可するログアウト URL は http://localhost:4040 とし、OIDC に準拠させ、JWT には RS256 のアルゴリズムを指定してください。”

  3. バックグラウンドで、Cursor は使用しようとしている MCP サーバーを識別し、ツールの実行許可を求めます。Cursor は、次のように使用するパラメータを表示します。

{
  "name": "My FastAPI App",
  "app_type": "regular_web",
  "callbacks": [
    "http://localhost:4040/callback"
  ],
  "allowed_logout_urls": [
    "http://localhost:4040"
  ],
  "oidc_conformant": true,
  "jwt_configuration": {
    "alg": "RS256"
  }
}

パラメータを再確認した後、Cursor による MCP ツール呼び出しに同意してください。同意すると、リクエストが MCP トランスポート形式で Auth0 MCP サーバーに渡されます。

  1. Auth0 MCP サーバーは、Cursor からのリクエストを Auth0 Management API のアクションにマッピングして、システムのキーチェーンに保存したアクセストークンを使用して API リクエストを行います。
  2. Auth0 は認証情報をチェックして API を実行し、情報を Auth0 MCP サーバーに返します。Auth0 MCP サーバーは、その情報を MCP トランスポート形式で Cursor に渡します。
  3. Cursor は受け取った情報をもとに、LLM を使用して自然言語の回答を生成し、作成されたアプリケーションの情報を表示します。さらに、Cursor はその情報をアプリケーションの設定に追加するかどうか尋ねます。

この一連の流れを以下の動画で視聴できます。:

temp

この方法により、Cursor はアクセストークンにアクセスすることなく、Auth0 MCP サーバーのみが Auth0 Management API との連携を担当します。

この仕組みからわかるように、可能性は無限大です。お気に入りの AI IDE で Auth0 を使ったモバイルアプリケーションの構築を指示するだけで、セットアップなしでアプリケーションが構築される様子を想像してみてください。今後のブログ記事では、このトピックや AI ツールで Auth0 MCP サーバーを活用する方法を取り上げる予定です。

まとめ

今日の多くの開発者が AI ツールを活用して、より迅速にコードの作成とテストをしています。

Auth0 MCP サーバー を使用することで、MCP ホストは自然言語を使い、安全、確実、かつインテリジェントに Auth0 の設定を管理できます。

開発者がセキュリティを妥協することなく高い生産性を維持するには、ID 管理をツールに統合することが重要です。

フィードバック、アイデア、ユースケースをぜひお寄せください。Auth0 MCP サーバーで何を構築し、どのように活用するかを楽しみにしています。

GitHubのソースコードスタートガイドからお試しください。