Skip to main content
Glama
identity-aiops

identity-aiops

require_password_reset

Destructive

Require a password reset for a user at next sign-in, or clear a pending reset requirement. Preview changes with dry-run and undo the flag if needed.

Instructions

[WRITE][risk=medium] Require a password reset at next sign-in (Keycloak required actions); reversible — the undo clears the flag only if this call set it. Pass clear=True to remove a pending requirement instead.

Args: user_id: User id, from list_users. clear: If True, REMOVE the pending reset requirement (the undo path). dry_run: If True, preview without changing. target: IdP target name from config; omit for the default.

Input Schema

NameRequiredDescriptionDefault
clearNo
targetNo
dry_runNo
user_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.6.0

TDQS

A4.3/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already flag readOnlyHint=false, destructiveHint=true and idempotentHint=false, so the write nature is known; the description goes further by declaring '[WRITE][risk=medium]', that the action is reversible, and the sharp caveat that the undo clears the flag only if this call set it, which explains the non-idempotent hint. It stops short of naming required permissions/auth or whether the user is notified, so not a 5. The 'reversible' wording sits in mild tension with destructiveHint=true but does not contradict it.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Front-loads the write/risk tags and the reversibility rule before the argument list, and each sentence contributes meaning. The Args block is necessary given the 0% schema coverage, though it duplicates structure that could live in the schema, adding slight length without new information.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a medium-risk mutation with no output schema and an undescribed schema, the description covers effect, reversibility, the undo caveat, dry-run preview, and parameter provenance — which is most of what an agent needs. Missing pieces are permission/auth prerequisites and any statement about the response or whether the reset is enforced at next login.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, so the description carries the full semantic load, and it defines all four parameters: the inverse-mode clear flag ('REMOVE the pending reset requirement'), dry_run ('preview without changing'), target ('IdP target name from config; omit for the default'), and user_id with its source. It omits the accepted format/validation of user_id and target, which keeps it out of 5 territory.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a precise verb+resource effect: 'Require a password reset at next sign-in (Keycloak required actions)', and immediately discloses the dual mode (set vs. clear). Nothing in the sibling list (disable_user, revoke_user_sessions, etc.) could be confused with this operation. An agent can identify the effect and its mechanism without opening the schema.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Gives clear in-tool routing: 'Pass clear=True to remove a pending requirement instead', plus dry_run as a preview path and provenance for user_id ('from list_users') and target ('from config; omit for the default'). It does not state when to prefer this tool over a sibling such as revoke_user_sessions or disable_user, so usage is well-contextualized but not fully exclusive.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.