keycloak model context protocol for Gemini CLI
io.github.christophenglisch/keycloak-model-context-protocol
Manage Keycloak users, groups, roles and realms through the Keycloak Admin REST API.
client:Gemini CLI
transport:stdio
runtime:npm
Install keycloak model context protocol in Gemini CLI
~/.gemini/settings.json · windows: %USERPROFILE%\.gemini\settings.json
{
"mcpServers": {
"keycloak-model-context-protocol": {
"command": "npx",
"args": [
"-y",
"keycloak-model-context-protocol"
],
"env": {
"KEYCLOAK_URL": "<KEYCLOAK_URL>",
"KEYCLOAK_AUTH_REALM": "<KEYCLOAK_AUTH_REALM>",
"KEYCLOAK_CLIENT_ID": "<KEYCLOAK_CLIENT_ID>",
"KEYCLOAK_CLIENT_SECRET": "<KEYCLOAK_CLIENT_SECRET>",
"KEYCLOAK_USERNAME": "<KEYCLOAK_USERNAME>",
"KEYCLOAK_PASSWORD": "<KEYCLOAK_PASSWORD>",
"KEYCLOAK_GRANT_TYPE": "<KEYCLOAK_GRANT_TYPE>",
"KEYCLOAK_MCP_READ_ONLY": "<KEYCLOAK_MCP_READ_ONLY>",
"KEYCLOAK_MCP_REALMS": "<KEYCLOAK_MCP_REALMS>",
"KEYCLOAK_MCP_ALLOW_MASTER_WRITE": "<KEYCLOAK_MCP_ALLOW_MASTER_WRITE>",
"KEYCLOAK_MCP_TOOLSETS": "<KEYCLOAK_MCP_TOOLSETS>",
"KEYCLOAK_MCP_REQUIRE_CONFIRMATION": "<KEYCLOAK_MCP_REQUIRE_CONFIRMATION>",
"KEYCLOAK_MCP_TIMEOUT_MS": "<KEYCLOAK_MCP_TIMEOUT_MS>",
"KEYCLOAK_MCP_LOG_LEVEL": "<KEYCLOAK_MCP_LOG_LEVEL>"
}
}
}
}
Gemini expands $VAR and ${VAR} inside env values, so a secret can live in your shell rather than this file. Gemini CLI docs