Keycloak Model Context Protocol

Keycloak Model Context Protocol

🚀 Keycloak MCP 服务器

一个用于管理 Keycloak 管理用户的模型上下文协议(Model Context Protocol)服务器,提供创建、删除用户和查看领域等功能,助力高效管理 Keycloak 用户。

smithery badge

🚀 快速开始

本服务器提供了创建、删除用户和查看领域等功能,帮助你高效管理 Keycloak 用户。下面为你详细介绍使用方法。

✨ 主要特性

  • 在特定领域创建新用户
  • 从领域中删除用户
  • 列出可用的领域
  • 在指定领域中列出用户

📦 安装指南

使用 Smithery 进行安装

通过 Smithery 可自动安装 Keycloak 的 Model Context Protocol:

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 
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:用户的 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 Actions 在 GitHub 上新版本发布时自动发布到 NPM

部署前的准备工作
  1. 创建 NPM 账户并获取访问令牌
  2. 将 NPM_TOKEN 作为秘密添加到 GitHub 仓库中
    • 进入仓库设置 > 秘密
    • 添加新的秘密,名称为 NPM_TOKEN
    • 粘贴你的 NPM 访问令牌作为值

先决条件

  • Node.js 18 或更高版本
  • 正在运行的 Keycloak 实例
  • 0 关注
  • 0 收藏,9 浏览
  • system 提出于 2025-09-30 10:24

相似服务问题