Keycloak模型上下文协议工具
一种模型上下文协议服务器,提供管理Keycloak用户和领域的工具,允许你创建和删除用户、列出可用领域、以及查看特定领域中的用户。
MCP 服务配置
复制以下 JSON 到 OPClaw 或其他 MCP 客户端的配置文件中即可使用
{
"mcpServers": {
"keycloak": {
"args": [
"path/to/dist/index.js"
],
"command": "node",
"env": {
"KEYCLOAK_ADMIN": "admin",
"KEYCLOAK_ADMIN_PASSWORD": "admin",
"KEYCLOAK_URL": "http://localhost:8080"
}
}
}
}
该服务需要配置环境变量:KEYCLOAK_ADMIN、KEYCLOAK_ADMIN_PASSWORD、KEYCLOAK_URL
可用工具 (4 个)
该服务在 MCP 协议中暴露的工具,AI 可按需调用
create-user 5 个参数 需填 5 项
Create a new user in a specific realm
必填参数:realm、username、email、firstName、lastName
delete-user 2 个参数 需填 2 项
Delete a user from a specific realm
必填参数:realm、userId
list-realms
List all available realms
该工具无需必填参数,直接调用即可
list-users 1 个参数 需填 1 项
List users in a specific realm
必填参数:realm
服务介绍
Keycloak MCP 服务器
这是一个用于 Keycloak 管理的 Model Context Protocol 服务器,提供了管理用户和领域(realm)的工具。
功能
- 在特定领域中创建新用户
- 从领域中删除用户
- 列出可用的领域
- 列出特定领域中的用户
安装
通过 Smithery 安装
要通过 Smithery 自动为 Claude Desktop 安装 Keycloak:
npx -y @smithery/cli install keycloak-model-context-protocol --client claude
通过 NPM(推荐)
该服务器作为 NPM 包提供:
# Direct usage with npx
npx -y keycloak-model-context-protocol
# Or global installation
npm install -g keycloak-model-context-protocol
本地开发设置
如果你想开发或修改服务器:
git clone <repository-url>
cd keycloak-model-context-protocol
npm install
npm run build
配置
使用 NPM 包(推荐)
在你的 Claude Desktop 配置文件中配置服务器:
{
"mcpServers": {
"keycloak": {
"command": "npx",
"args": ["-y", "keycloak-model-context-protocol"],
"env": {
"KEYCLOAK_URL": "http://localhost:8080",
"KEYCLOAK_ADMIN": "admin",
"KEYCLOAK_ADMIN_PASSWORD": "admin"
}
}
}
}
对于本地开发
{
"mcpServers": {
"keycloak": {
"command": "node",
"args": ["path/to/dist/index.js"],
"env": {
"KEYCLOAK_URL": "http://localhost:8080",
"KEYCLOAK_ADMIN": "admin",
"KEYCLOAK_ADMIN_PASSWORD": "admin"
}
}
}
}
可用工具
create-user
在指定的领域中创建一个新用户。
输入:
realm:领域名称username:新用户的用户名email:用户的电子邮件地址firstName:用户的姓lastName:用户的名
delete-user
从指定的领域中删除一个用户。
输入:
realm:领域名称userId:要删除的用户的 ID
list-realms
列出所有可用的领域。
list-users
列出指定领域中的所有用户。
输入:
realm:领域名称
开发
npm run watch
测试
使用 MCP Inspector 测试服务器:
npx -y @modelcontextprotocol/inspector npx -y keycloak-model-context-protocol
部署
NPM 包
当在 GitHub 上发布新版本时,此项目会通过 GitHub Actions 自动发布到 NPM。
部署设置要求
- 创建 NPM 账户并获取访问令牌
- 将 NPM_TOKEN 密钥添加到 GitHub 仓库
- 前往仓库设置 > 密钥
- 添加名为
NPM_TOKEN的新密钥 - 将你的 NPM 访问令牌粘贴为值
先决条件
- Node.js 18 或更高版本
- 正在运行的 Keycloak 实例