Identity Aiops
Governed Keycloak + authentik identity ops: users, events, clients, MFA, RCA. 29 tools.
- Transport
- Not stated
- Package
- —
- Registry id
- io.github.AIops-tools/identity-aiops
No install snippet on purpose. A working MCP config is a command, its arguments and an environment block — the last two are where API keys live, so this catalogue never stores them and cannot publish them. Follow the link above for the authors' own instructions.
Governed AI-ops for self-hosted identity providers — Keycloak + authentik.
identity-aiops gives AI agents (and the humans supervising them) a safe,
audited way to operate the identity plane of self-built and small/mid-size
infrastructure: who can sign in, what failed and why, which OAuth clients are
misconfigured, and who still has no second factor. It is built for teams
running their own Keycloak or authentik who want agent-driven identity
operations with receipts — every tool call is audited, and writes carry
risk-tier labels with dry-run previews and undo tokens.
Verification status: modelled on the public Keycloak admin REST API and authentik API v3 and exercised against mocked responses; there is no recorded end-to-end run against a live instance yet.
identity-aiops doctoris the fastest live check — seedocs/VERIFICATION.md.
What it does
| Area | Tools |
|---|---|
| Realm / system | overview, realm settings (brute-force protection, password/OTP policy), identity providers |
| Users | list/search, detail, count, sessions, credentials (MFA surface), groups, members, lockout status |
| Events | authentication events, admin/config-change events |
| Clients | list, detail, per-client sessions, session stats |
| Flagship RCA | login_failure_rca — brute-force (spray/targeted) vs misconfigured client vs expired-credential storm vs lockout storm; stale_access_audit — dormant users, never-logged-in accounts, service accounts used interactively, orphaned sessions; client_misconfig_audit — wildcard/http redirect URIs, public clients with secrets, implicit flow, missing PKCE, password grant (ranked risk); mfa_coverage_analysis — coverage %, gap list |
| Governed writes | disable_user / enable_user (undo pair), revoke_user_sessions, require_password_reset (undo clears the flag), update_client_redirect_uris (undo replays the prior list), rotate_client_secret (masked priorState) |
29 MCP tools: 21 reads (including the 4 analyses) + 6 governed writes + 2 undo
tools (undo_list, undo_apply). The
same tools work on both platforms — a per-target platform field selects the
API shape (auth flow + resource paths).
Supported platforms
| Platform | API | Auth |
|---|---|---|
| keycloak | Admin REST API (/admin/realms/{realm}/...) |
OAuth2 client-credentials grant against /realms/{realm}/protocol/openid-connect/token; short-lived token auto-refreshed on 401 |
| authentik | API v3 (/api/v3/...) |
Long-lived API token (Bearer) |
Platform notes: require_password_reset, rotate_client_secret,
client_sessions, client_session_stats, and user_lockout_status are
Keycloak-shaped (authentik has no equivalent endpoint — the tools return a
teaching error there). authentik contributes the global session list used by
the stale-access audit's orphaned-session check.
Missing a platform (Authelia, Zitadel, Ory...), an endpoint, or an analysis you need? 缺功能提 issue/PR 欢迎留言 — open an issue or PR at https://github.com/AIops-tools/Identity-AIops, feature requests welcome.
What this tool does, and does not, decide
It delivers identity-provider operations — reads and writes — accurately and
records every one of them. It does not decide whether a write is allowed to
happen. That is the agent's judgement, or the permission of the account you
connect it with: give the Keycloak service account (or authentik token) only
the roles you want the agent to have — view-users / view-events /
view-clients and no manage-* — and the writes fail at the server, the place
that actually owns the permission.
From the project's README.