Asgardeo MCP Server について
Asgardeo MCP Server は、Asgardeo 組織または WSO2 Identity Server を管理する LLM ツールを提供します。アプリケーション、API リソース、ユーザー、クレームを管理でき、自然言語によるログインフローの更新にも対応します。実験的な機能であり、本番環境向けではありません。
主な機能
- 01アプリケーションの一覧表示・作成・更新
- 02OAuth/OIDC とクレームの設定
- 03API リソースと認可の管理
- 04ユーザーの作成とクレームの一覧表示
- 05自然言語によるログインフローの更新
活用シーン
- 01組織内のアプリケーションと詳細を確認
- 02複数種類のアプリケーションを作成
- 03アプリの API リソースと権限を設定
- 04アプリケーションのログインフローを変更
MCP 対応
Asgardeo または WSO2 Identity Server のアプリケーション、API リソース、ユーザー、クレームを管理するツールを MCP クライアントに公開します。クライアントから自然言語の依頼を含む ID 設定タスクを実行できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Asgardeo MCP サーバー
Asgardeo MCP サーバーを使用すると、LLM ツールを使って Asgardeo 組織または WSO2 Identity Server のデプロイメントをシームレスに管理し、さまざまな設定タスクを自然言語で実行できます。
重要
実験的機能に関するお知らせ
このソフトウェアには実験的な機能が含まれており、本番環境での使用を想定していません。 実装の進展に伴い、機能、API、動作が事前の通知なく変更される場合があります。
主なユースケース
Claude Desktop などのツールを使用すると、次のことができます。
- アプリケーションの一覧表示:組織内のすべてのアプリケーションの一覧を取得します。
- アプリケーションの作成:シングルページ、ウェブ、モバイル、または m2m アプリケーションを設定し、Asgardeo 認証 SDK と統合します。
- アプリケーションの詳細の取得:特定のアプリケーションに関する詳細情報を取得します。
- ログインフローの設定:自然言語のプロンプトと利用可能なツールを使ってアプリケーションのログインフローをカスタマイズし、シームレスなユーザー認証を実現します。
デモ
-
Claude でのアプリケーション一覧表示

-
Claude でのアプリケーション詳細の取得

使用方法
Asgardeo / WSO2 Identity Server での設定
- M2M アプリケーションの作成:組織内に M2M アプリケーションを設定します。
- 管理 API の認可:アプリケーションに次のスコープを付与します。
| API | スコープ |
|---|---|
Application Management API (/api/server/v1/applications) | internal_application_mgt_view, internal_application_mgt_update, internal_application_mgt_create |
API Resource Management API (/api/server/v1/api-resources) | internal_api_resource_create, internal_api_resource_view |
Identity Provider Management API (/api/server/v1/identity-providers) | internal_idp_view |
Authenticators Management API (/api/server/v1/authenticators) | internal_authenticator_view |
Claim Management API (/api/server/v1/claim-dialects) | internal_claim_meta_view |
SCIM2 Users API (/scim2/Users) | internal_user_mgt_create |
OIDC Scope Management API (/api/server/v1/oidc/scopes) | internal_oidc_scope_mgt_view |
- 認証情報のコピー:M2M アプリケーションのクライアント ID とクライアントシークレットを保存します。
お使いのマシンでの設定
- リポジトリのクローン:
git clone https://github.com/asgardeo/asgardeo-mcp-server.git
- 依存関係のインストール:
go mod tidy
- 実行ファイルのビルド:
go build -o asgardeo-mcp
これにより、現在のディレクトリに asgardeo-mcp バイナリが作成されます(例:/Users/<user directory>/asgardeo-mcp-server/asgardeo-mcp)。次の手順で必要になるため、この絶対パスを控えておいてください。
- MCP クライアントの設定:
VS Code(GitHub Copilot)
- GitHub Copilot 拡張機能をインストールします。
- コマンドパレット(
Ctrl+Shift+P/Cmd+Shift+P)を開き、MCP: Open User Configurationを選択します。 - 次のサーバー設定を
mcp.jsonファイルに追加します。{ "servers": { "asgardeo-mcp-server": { "type": "stdio", "command": "<absolute path to the asgardeo-mcp executable>", "args": [], "env": { "BASE_URL" : "https://api.asgardeo.io/t/<asgardeo organization>", "CLIENT_ID" : "<client ID>", "CLIENT_SECRET" : "<client secret>" } } } } - ファイルを保存し、
mcp.jsonから MCP サーバーを起動します。
Claude Desktop
- Claude Desktop を開き、
Settings > Developerに移動します。 claude_desktop_config.jsonファイルを編集します。"asgardeo-mcp": { "command": "<absolute path to the asgardeo-mcp executable>", "args": [], "env": { "BASE_URL": "https://api.asgardeo.io/t/<asgardeo organization>", "CLIENT_ID": "<client ID>", "CLIENT_SECRET": "<client secret>" } }- Claude Desktop を再起動します。
Cursor
- Cursor を開き、
Settings > MCPに移動します。 mcp.jsonファイルを編集します。"asgardeo-mcp": { "command": "<absolute path to the asgardeo-mcp executable>", "args": [], "env": { "BASE_URL": "https://api.asgardeo.io/t/<asgardeo organization>", "CLIENT_ID": "<client ID>", "CLIENT_SECRET": "<client secret>" } }
メモ
- WSO2 Identity Server を使用する場合は、
PRODUCT_MODEという追加の環境変数をwso2isに設定する必要があります。- また、
BASE_URLを WSO2 Identity Server のベース URL(例:https://<your-wso2is-host>/t/<tenant-domain>)に置き換えてください。- さらに、ローカル開発環境または内部ネットワークで WSO2 Identity Server を使用する場合、SSL エラーを回避するために、サーバーの認証局(CA)を設定する必要がある場合があります。
CERT_PATH環境変数に CA 証明書ファイルのパスを設定してください。
利用可能なツール
Asgardeo MCP Server では、組織と連携するために以下のツールを利用できます。
アプリケーション管理
| ツール名 | 説明 | パラメーター |
|---|---|---|
list_applications | 組織内のすべてのアプリケーションを一覧表示します | なし |
create_single_page_app | 新しいシングルページアプリケーションを作成します | application_name(必須):アプリケーション名redirect_url(必須):アプリケーションのリダイレクト URL |
create_webapp_with_ssr | サーバーサイドレンダリングを使用する新しいウェブアプリケーションを作成します | application_name(必須):アプリケーション名redirect_url(必須):アプリケーションのリダイレクト URL |
create_mobile_app | 新しいモバイルアプリケーションを作成します | application_name(必須):アプリケーション名redirect_url(必須):アプリケーションのリダイレクト URL |
create_m2m_app | 新しいマシン間アプリケーションを作成します | application_name(必須):アプリケーション名 |
get_application_by_name | 名前を指定してアプリケーションの詳細を取得します | application_name(必須):検索するアプリケーション名 |
get_application_by_client_id | クライアント ID を指定してアプリケーションの詳細を取得します | client_id(必須):アプリケーションのクライアント ID |
update_application_basic_info | アプリケーションの基本情報を更新します | id(必須):アプリケーションの IDname、description、image_url、access_url、logout_return_url(任意) |
update_application_oauth_config | アプリケーションの OAuth/OIDC 設定を更新します | id(必須):アプリケーションの IDredirect_urls、allowed_origins、user_access_token_expiry_time、application_access_token_expiry_time、refresh_token_expiry_time など(任意) |
update_application_claim_config | アプリケーションのクレーム設定を更新します | id(必須):アプリケーションの IDclaims(必須):要求するクレーム URI のリスト(クレーム URI はデフォルトの WSO2 クレームダイアレクトを使用して指定してください。例:http://wso2.org/claims/username) |
authorize_api | アプリケーションに API へのアクセスを許可します | appId(必須):アプリケーションの IDid(必須):API リソースの IDpolicyIdentifier(必須、デフォルト:「RBAC」):認可ポリシーscopes(必須):認可するスコープ |
list_authorized_api | アプリケーションで認可された API リソースを一覧表示します | app_id(必須):アプリケーションの ID |
update_login_flow | 自然言語のプロンプトに基づいて、アプリケーションのログインフローを更新します | app_id(必須):アプリケーションの IDuser_prompt(必須):希望するログインフローの自然言語による説明 |
API リソース管理
| ツール名 | 説明 | パラメーター |
|---|---|---|
list_api_resources | 組織内の API リソースを一覧表示します | filter(任意):フィルター式limit(任意):返す結果の最大数 |
search_api_resources_by_name | 名前で API リソースを検索します | name(必須):検索する API リソース名 |
get_api_resource_by_identifier | 識別子で API リソースを取得します | identifier(必須):API リソースの識別子 |
create_api_resource | 新しい API リソースを作成します | identifier(必須):API リソースの識別子name(必須):API リソース名requiresAuthorization(必須):API が認可を必要とするかどうかscopes(必須):API のスコープのリスト |
ユーザー管理
| ツール名 | 説明 | パラメーター |
|---|---|---|
create_user | 組織内にユーザーを作成します | username(必須):ユーザー名password(必須):パスワードemail(必須):メールアドレスfirst_name(必須):ユーザーの名last_name(必須):ユーザーの姓userstore_domain(任意、デフォルト:「DEFAULT」):ユーザーストアのドメイン |
クレーム管理
| ツール名 | 説明 | パラメーター |
|---|---|---|
list_claims | 組織内のクレームを一覧表示します | なし |
メモ
WSO2 Identity Server を使用しており、
update_login_flowツールを使用する予定の場合は、AI 機能の登録の手順に従ってください。
プロンプトの例
アプリケーション管理
-
SPA の作成:
Create a new Single Page Application named "My Demo App" with redirect URL "https://example.com/callback". -
アプリケーションの更新:
Update my application with ID "abc123" to have a new name "Updated App". -
アプリケーションのログインフローの更新:
Update the login flow of my application with ID "abc123" to Username and Password as the first step and Email OTP as the second step. -
アプリケーションのクレーム設定の更新:
Update the claim configuration of my application with ID "abc123" to include "username", and "last_name".
API リソース管理
- API の作成と認可:
Create a new API resource named "Customer API" and authorize my application to access it with "read:customers" scopes.
ユーザー管理
- ユーザーの作成:
Create a test user with the username and email address '[email protected]'.
クレーム管理
- クレーム一覧の取得:
List all claims in my Asgardeo organization.
トラブルシューティング
認証と権限
- 認証情報が無効です:ベース URL に設定されているクライアント ID、クライアントシークレット、組織名を確認してください
- 403 Forbidden:M2M アプリケーションで必要なすべてのスコープが認可されているか確認してください
セットアップと接続
- ビルドの問題:Go 1.18 以降がインストールされていることを確認し、ビルド前に
go mod tidyを実行してください - MCP 接続:実行ファイルのパスが絶対パスで正しいことを確認し、権限を確認してください(
chmod +x asgardeo-mcp)
ヘルプの利用
トラブルシューティング後も問題が解決しない場合:
- GitHub のイシューを確認してください
- エラーメッセージと環境情報を含めた詳細なイシューを新規作成してください
- サポートについては WSO2 コミュニティフォーラムに参加してください
コントリビューション
コントリビューションを歓迎します!GitHub リポジトリからイシューを送信するか、プルリクエストを作成してください。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。