Keycloak MCP Server
Administre usuários e realms do Keycloak usando um servidor Model Context Protocol.
Documentação
Keycloak MCP Server
Um servidor Model Context Protocol para administração do Keycloak, fornecendo ferramentas para gerenciar usuários e realms.
Recursos
- Criar novos usuários em realms específicos
- Excluir usuários de realms
- Listar realms disponíveis
- Listar usuários em realms específicos
Instalação
Instalando via Smithery
Para instalar o Keycloak para Claude Desktop automaticamente via Smithery:
npx -y @smithery/cli install keycloak-model-context-protocol --client claude
Via NPM (Recomendado)
O servidor está disponível como um pacote NPM:
# Direct usage with npx
npx -y keycloak-model-context-protocol
# Or global installation
npm install -g keycloak-model-context-protocol
Configuração para Desenvolvimento Local
Se você deseja desenvolver ou modificar o servidor:
git clone <repository-url>
cd keycloak-model-context-protocol
npm install
npm run build
Configuração
Usando Pacote NPM (Recomendado)
Configure o servidor no seu arquivo de configuração do 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"
}
}
}
}
Para Desenvolvimento Local
{
"mcpServers": {
"keycloak": {
"command": "node",
"args": ["path/to/dist/index.js"],
"env": {
"KEYCLOAK_URL": "http://localhost:8080",
"KEYCLOAK_ADMIN": "admin",
"KEYCLOAK_ADMIN_PASSWORD": "admin"
}
}
}
}
Ferramentas Disponíveis
create-user
Cria um novo usuário em um realm especificado.
Entradas:
realm: O nome do realmusername: Nome de usuário para o novo usuárioemail: Endereço de e-mail do usuáriofirstName: Primeiro nome do usuáriolastName: Sobrenome do usuário
delete-user
Exclui um usuário de um realm especificado.
Entradas:
realm: O nome do realmuserId: O ID do usuário a ser excluído
list-realms
Lista todos os realms disponíveis.
list-users
Lista todos os usuários em um realm especificado.
Entradas:
realm: O nome do realm
Desenvolvimento
npm run watch
Testes
Para testar o servidor usando o MCP Inspector:
npx -y @modelcontextprotocol/inspector npx -y keycloak-model-context-protocol
Implantação
Pacote NPM
Este projeto é publicado automaticamente no NPM via GitHub Actions quando uma nova versão é publicada no GitHub.
Requisitos de Configuração para Implantação
- Crie uma conta NPM e obtenha um token de acesso
- Adicione o segredo NPM_TOKEN ao repositório GitHub
- Vá para Configurações do repositório > Segredos
- Adicione um novo segredo chamado
NPM_TOKEN - Cole seu token de acesso NPM como valor
Pré-requisitos
- Node.js 18 ou superior
- Instância do Keycloak em execução