返回市场
钥匙扣模型上下文协议

钥匙扣模型上下文协议

作者:ChristophEnglisch34 星标更新:2025-02-10

项目介绍

Keycloak MCP Server

smithery 徽章

这是一个用于 Keycloak 管理的 Model Context Protocol 服务器,提供工具来管理用户和领域。

特性

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

安装

通过 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 Inspector 测试服务器:

npx -y @modelcontextprotocol/inspector npx -y keycloak-model-context-protocol

部署

NPM 包

当在 GitHub 上发布新版本时,此项目会自动通过 GitHub Actions 发布到 NPM

部署要求设置

  1. 创建 NPM 账户并获取访问令牌
  2. 将 NPM_TOKEN 密钥添加到 GitHub 仓库
    • 前往仓库设置 > 密钥
    • 添加名为 NPM_TOKEN 的新密钥
    • 将您的 NPM 访问令牌粘贴为值

先决条件

  • Node.js 18 或更高版本
  • 运行中的 Keycloak 实例