Keycloak MCP 是一个针对 Keycloak 的模型上下文协议(MCP)服务器实现,它提供了一个标准化接口,用于管理 Keycloak 的用户和领域。
本项目实现了一个与 Keycloak 集成的 MCP 服务器,允许你通过标准化协议管理 Keycloak 的用户和领域。它使用官方的 Keycloak 管理客户端与 Keycloak 的 API 进行交互。
realm:领域名称username:新用户的用户名email:用户的电子邮件地址firstName:用户的名字lastName:用户的姓氏realm:领域名称userId:要删除的用户的 IDrealm:领域名称realm:领域名称realm:领域名称realm:领域名称clientUniqueId:客户端的唯一 IDrealm:领域名称userId:用户的 IDclientUniqueId:客户端的唯一 IDroleName:要分配的角色名称realm:领域名称userId:用户的 IDgroupId:组的 ID要通过 Smithery 自动为 Claude Desktop 安装 keycloak - mcp,请执行以下命令:
npx -y @smithery/cli install @HaithamOumerzoug/keycloak-mcp --client claude
该服务器作为 NPM 包提供:
# 直接使用 npx
npx -y keycloak-mcp
# 或者全局安装
npm install -g keycloak-mcp
在你的 Cursor IDE、Cline 或 Claude Desktop MCP 配置文件中配置服务器:
{
"mcpServers": {
"keycloak": {
"command": "npx",
"args": ["-y", "keycloak-mcp"],
"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"
}
}
}
}
要设置开发环境,请按以下步骤操作:
npm install
npm run build
npm run watch
npm run build - 构建项目并使 CLI 可执行npm run prepare - 运行构建脚本(在包安装期间使用)npm run watch - 监视更改并自动重新构建@keycloak/keycloak-admin-client - 官方 Keycloak 管理客户端@modelcontextprotocol/sdk - 用于标准化协议实现的 MCP SDKzod - 基于 TypeScript 的模式验证库typescript - 支持 TypeScript@types/node - Node.js 的 TypeScript 定义shx - 跨平台的 shell 命令本项目采用 MIT 许可证。