Back to MCP directory
publicPublicdnsLocal runtime

keycloak-model-context-protocol

Keycloak管理协议服务器,提供用户和领域管理的工具

article

README

🚀 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 <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:用户的 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 实例
help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client