README
🚀 Keycloak MCP 服务器
Keycloak MCP 服务器用于管理 Keycloak 管理的模型上下文协议(Model Context Protocol),它提供了一系列工具,可高效管理用户和域,提升管理效率。
🚀 快速开始
你可以通过以下步骤快速开始使用 Keycloak MCP 服务器:
- 完成安装(参考“📦 安装指南”)。
- 进行配置(参考“📚 详细文档”中的配置部分)。
- 运用可用工具(参考“📚 详细文档”中的可用工具部分)。
✨ 主要特性
- 能够在特定域中创建新用户。
- 可从域中删除用户。
- 支持列出所有可用域。
- 可以列出特定域中的用户。
📦 安装指南
通过 Smithery 安装
若要自动通过 Smithery 安装 Keycloak,可使用以下命令:
npx -y @smithery/cli install keycloak-model-context-protocol --client claude
通过 NPM(推荐)
服务器以 NPM 包的形式提供,你可以选择以下方式安装:
# 使用 npx 直接运行
npx -y keycloak-model-context-protocol
# 或者全局安装
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 检查器测试服务器,命令如下:
npx -y @modelcontextprotocol/inspector npx -y keycloak-model-context-protocol
部署
NPM 包
该项目借助 GitHub Actions 在 GitHub 上发布到 NPM,当新版本在 GitHub 上发布时会自动更新。
部署先决条件
- 创建 NPM 账户并获取访问令牌。
- 将 NPM_TOKEN 秘密添加到 GitHub 仓库中:
- 前往仓库设置 > 秘密。
- 添加新的秘密,名称为
NPM_TOKEN。 - 粘贴你的 NPM 访问令牌作为值。
先决条件
- Node.js 18 或更高版本。
- 运行中的 Keycloak 实例。
Scan to contact