Asgardeo MCP 服务器允许您使用大语言模型工具无缝管理您的 Asgardeo 组织或 WSO2 身份服务器部署,支持各种配置任务的自然语言交互。
[!IMPORTANT] 实验性功能通知
本软件包含实验性功能,并不适用于生产环境。 功能、API 和功能可能会在实施过程中发生变化,且不会提前通知。
使用像 Claude Desktop 这样的工具,您可以:
在 Claude 中列出应用程序

在 Claude 中获取应用程序详情

| API | 范围 |
|---|---|
应用程序管理 API (/api/server/v1/applications) | internal_application_mgt_view, internal_application_mgt_update, internal_application_mgt_create |
API 资源管理 API (/api/server/v1/api-resources) | internal_api_resource_update, internal_api_resource_create, internal_api_resource_view |
身份提供者管理 API (/api/server/v1/identity-providers) | internal_idp_view |
认证器管理 API (/api/server/v1/authenticators) | internal_authenticator_view |
声明管理 API (/api/server/v1/claim-dialects) | internal_claim_meta_view |
SCIM2 用户 API (/scim2/Users) | internal_user_mgt_create |
OIDC 范围管理 API (/api/server/v1/oidc/scopes) | internal_oidc_scope_mgt_view |
git clone https://github.com/asgardeo/asgardeo-mcp-server.git
go mod tidy
go build -o asgardeo-mcp
文件 > 首选项 > 设置)。settings.json 文件:
"mcp": {
"servers": {
"asgardeo-mcp-server": {
"type": "stdio",
"command": "<绝对路径到 asgardeo-mcp 可执行文件,例如 /Users/<用户目录>/<仓库路径>/asgardeo-mcp-server/asgardeo-mcp>",
"args": [],
"env": {
"BASE_URL" : "https://api.asgardeo.io/t/<asgardeo 组织>",
"CLIENT_ID" : "<客户端 ID>",
"CLIENT_SECRET" : "<客户端密钥>"
}
}
}
}
settings.json 启动 MCP 服务器。设置 > 开发者。claude_desktop_config.json 文件:
"asgardeo-mcp": {
"command": "<绝对路径到 asgardeo-mcp 可执行文件,例如 /Users/<用户目录>/<仓库路径>/asgardeo-mcp-server/asgardeo-mcp>",
"args": [],
"env": {
"BASE_URL": "https://api.asgardeo.io/t/<asgardeo 组织>",
"CLIENT_ID": "<客户端 ID>",
"CLIENT_SECRET": "<客户端密钥>"
}
}
设置 > MCP。mcp.json 文件:
"asgardeo-mcp": {
"command": "<绝对路径到 asgardeo-mcp 可执行文件,例如 /Users/<用户目录>/<仓库路径>/asgardeo-mcp-server/asgardeo-mcp>",
"args": [],
"env": {
"BASE_URL": "https://api.asgardeo.io/t/<asgardeo 组织>",
"CLIENT_ID": "<客户端 ID>",
"CLIENT_SECRET": "<客户端密钥>"
}
}
[!NOTE]
- 如果您使用的是 WSO2 身份服务器,需要设置一个名为
PRODUCT_MODE的附加环境变量为wso2is。- 同时,替换
BASE_URL为您自己的 WSO2 身份服务器基础 URL(例如,https://<您的 wso2is 主机>/t/<租户域>)。- 此外,如果您使用 WSO2 身份服务器进行本地开发或在内部网络中,可能需要设置服务器的证书颁发机构(CA),以避免 SSL 错误。您可以通过设置
CERT_PATH环境变量为您的 CA 证书文件路径来实现这一点。
Asgardeo MCP 服务器提供了以下工具用于与您的组织互动:
| 工具名称 | 描述 | 参数 |
|---|---|---|
list_applications | 列出组织中的所有应用程序 | 无 |
create_single_page_app | 创建一个新的单页应用程序 | application_name (必需):应用程序名称<br>redirect_url (必需):应用程序的重定向 URL |
create_webapp_with_ssr | 创建一个新的带有服务器端渲染的 Web 应用程序 | application_name (必需):应用程序名称<br>redirect_url (必需):应用程序的重定向 URL |
create_mobile_app | 创建一个新的移动应用程序 | application_name (必需):应用程序名称<br>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 (必需):应用程序的 ID<br>name, description, image_url, access_url, logout_return_url (可选) |
update_application_oauth_config | 更新应用程序的 OAuth/OIDC 配置 | id (必需):应用程序的 ID<br>redirect_urls, allowed_origins, user_access_token_expiry_time, application_access_token_expiry_time, refresh_token_expiry_time 等 (可选) |
update_application_claim_config | 更新应用程序的声明配置 | id (必需):应用程序的 ID<br>claims (必需):请求声明 URI 的列表 (声明 URI 应该使用默认的 WSO2 声明方言指定。例如:http://wso2.org/claims/username) |
authorize_api | 授权应用程序访问 API | appId (必需):应用程序的 ID<br>id (必需):API 资源的 ID<br>policyIdentifier (必需,默认值:"RBAC"):授权策略<br>scopes (必需):要授权的作用域 |
list_authorized_api | 列出应用程序已授权的 API 资源 | app_id (必需):应用程序的 ID |
update_login_flow | 根据自然语言提示更新应用程序的登录流程 | app_id (必需):应用程序的 ID<br>user_prompt (必需):所需登录流程的自然语言描述 |
| 工具名称 | 描述 | 参数 |
|---|---|---|
list_api_resources | 列出组织中的 API 资源 | filter (可选):过滤表达式<br>limit (可选):返回的最大结果数 |
search_api_resources_by_name | 根据名称搜索 API 资源 | name (必需):要搜索的 API 资源名称 |
get_api_resource_by_identifier | 根据标识符获取 API 资源 | identifier (必需):API 资源的标识符 |
create_api_resource | 创建一个新的 API 资源 | identifier (必需):API 资源的标识符<br>name (必需):API 资源的名称<br>requiresAuthorization (必需):API 是否需要授权<br>scopes (必需):API 的作用域列表 |
| 工具名称 | 描述 | 参数 |
|---|---|---|
create_user | 在您的组织中创建用户 | username (必需):用户名<br>password (必需):密码<br>email (必需):电子邮件地址<br>first_name (必需):用户的名<br>last_name (必需):用户的姓<br>userstore_domain (可选,默认值:"DEFAULT"):用户存储域 |
| 工具名称 | 描述 | 参数 |
|---|---|---|
list_claims | 列出组织中的声明 | 无 |
[!NOTE] 如果您使用的是 WSO2 身份服务器并且计划使用
update_login_flow工具,请确保遵循 订阅 AI 功能 中的步骤。
创建一个 SPA:
创建一个名为 "My Demo App" 的新单页应用程序,其重定向 URL 为 "https://example.com/callback"。
更新应用程序:
将我的 ID 为 "abc123" 的应用程序更新为新的名称 "Updated App"。
更新应用程序登录流程:
将我 ID 为 "abc123" 的应用程序的登录流程更新为用户名和密码作为第一步,电子邮件 OTP 作为第二步。
更新应用程序声明配置:
将我 ID 为 "abc123" 的应用程序的声明配置更新为包括 "username" 和 "last_name"。
创建一个名为 "Customer API" 的新 API 资源,并授权我的应用程序使用 "read:customers" 作用域访问它。
创建一个测试用户,用户名和电子邮件地址为 'test@example.com'。
列出我 Asgardeo 组织中的所有声明。
go mod tidychmod +x asgardeo-mcp)如果故障排除后问题仍然存在:
欢迎贡献!通过 GitHub 仓库 提交问题或拉取请求。