Medium Risk

UpdateUser

Update a user's attributes. You can set the user's primary contact identifiers (email address and phone numbers) by updating the primary_email_address_id and primary_phone_number_id attributes respectively. Both IDs should correspond to verified identifications that belong to the user. You can re...

Risk signalsHandles credentials or secrets (auth) · Accepts raw HTML/template content (body) · High parameter count (30 properties)

Part of the Clerk server.

UpdateUser can modify Clerk data, with no limits today. PolicyLayer puts allow, deny, and rate-limit rules on every call. Live in minutes.

SECURE CLERK →

Free to start. No card required.

AI agents use UpdateUser to create or modify resources in Clerk. Write operations carry medium risk because an autonomous agent could trigger bulk unintended modifications. Rate limits prevent a single agent session from making hundreds of changes in rapid succession. Argument validation ensures the agent passes expected values.

Without a policy, an AI agent could call UpdateUser repeatedly, creating or modifying resources faster than any human could review. PolicyLayer's rate limiting ensures write operations happen at a controlled pace, and argument validation catches malformed or unexpected inputs before they reach Clerk.

Write tools can modify data. A rate limit prevents runaway bulk operations from AI agents.

policy.json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "UpdateUser": {
      "limits": [
        {
          "counter": "updateuser_rate",
          "window": "minute",
          "max": 30,
          "scope": "grant"
        }
      ]
    }
  }
}

See the full Clerk policy for all 14 tools.

Get this rule live on your own Clerk server in minutes. PolicyLayer enforces it on every call, before it runs.

ENFORCE ON MY CLERK →

View all 14 tools →

These attack patterns abuse exactly the kind of access UpdateUser gives an agent. Each links to the full case and the policy that stops it:

Browse the full MCP Attack Database →

Every attack above starts with a tool call. PolicyLayer checks each one against your policy first, so UpdateUser only ever does what you allow.

SECURE CLERK →

Other write tools across the catalogue. The same approach applies to each: rate-limit and validate the arguments.

What does the UpdateUser tool do? +

Update a user's attributes. You can set the user's primary contact identifiers (email address and phone numbers) by updating the primary_email_address_id and primary_phone_number_id attributes respectively. Both IDs should correspond to verified identifications that belong to the user. You can remove a user's username by setting the username attribute to null or the blank string "". This is a destructive action; the identification will be deleted forever. Usernames can be removed only if they are optional in your instance settings and there's at least one other identifier which can be used for authentication. This endpoint allows changing a user's password. When passing the password parameter directly you have two further options. You can ignore the password policy checks for your instance by setting the skip_password_checks parameter to true. You can also choose to sign the user out of all their active sessions on any device once the password is updated. Just set sign_out_of_other_sessions to true.. It is categorised as a Write tool in the Clerk MCP Server, which means it can create or modify data. Consider rate limits to prevent runaway writes.

How do I enforce a policy on UpdateUser? +

Register the Clerk MCP server in PolicyLayer and add a rule for UpdateUser: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Clerk. Nothing to install.

What risk level is UpdateUser? +

UpdateUser is a Write tool with medium risk. Write tools should be rate-limited to prevent accidental bulk modifications.

Can I rate-limit UpdateUser? +

Yes. Add a rate_limit block to the UpdateUser rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block UpdateUser completely? +

Set action: deny in the PolicyLayer policy for UpdateUser. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides UpdateUser? +

UpdateUser is provided by the Clerk MCP server (@clerk/clerk-mcp). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

Enforce policy on every Clerk tool call.

Deterministic rules across all 14 Clerk tools. Per-identity grants. Full audit log. Live in minutes. Nothing to install.

Free to start. No card required.

4,600+ MCP servers and 31,000+ tools scanned and risk-classified.

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.