Skip to main content
Glama

Dutify

pm_change_member_role

Destructive

Change a member's workspace access level. userUuid is the target user's UUID (NOT email — call pm_list_workspace_members first to find it). workspaceAccessLevelId is a numeric Long id from the workspace /access-levels catalogue (e.g. 1, 2, 3) — fetch it via the catalog meta tools or your existing endpoint introspection if you don't already have it. Caller needs MANAGE_USERS permission. Note: this endpoint is HTTP PUT on the collection path (not PATCH on a sub-resource). API-key scope: workspaces:write.

Input Schema

NameRequiredDescriptionDefault
accountNoMulti-account auth only: name of the account from X-Dutify-Accounts to use for this call. Ignored in single-account mode (X-API-Key header). When multiple accounts are configured and this is omitted, the call fails with ACCOUNT_REQUIRED listing the available names. list_accounts never requires a selection.
userUuidYesTarget user UUID
workspaceNoWorkspace identifier or exact name for this call. Overrides the configured workspace. For personal keys, discover candidates with list_workspaces and select explicitly. Does not change other calls or expand a workspace key's access.
workspaceAccessLevelIdYesNumeric access-level id (Long); list /v1/workspaces/{ws}/access-levels to discover

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already flag destructiveHint=true and idempotentHint=false, so the description's most valuable additions are the authorization requirements (MANAGE_USERS, `workspaces:write` scope) and the note that this is a PUT on the collection path rather than a PATCH on a sub-resource — which warns that the whole role assignment is replaced. It does not describe what happens to the member's prior access level or what the response contains, leaving a modest gap for a destructive mutation.

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-loaded with the core action, then parameter hints, then permissions and transport details — a sensible priority order. Slightly dense with backticked field names and one long parenthetical, but every sentence carries operational information rather than filler.

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 destructive mutation with no output schema, the description covers permission requirements, parameter discovery paths, and the HTTP shape of the call. The only missing piece is what is returned or confirmed after the change, which is a minor omission given the absence of an output schema.

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 coverage is already 100%, but the description adds real meaning beyond the schema: it warns that userUuid is a UUID and explicitly NOT an email, and that workspaceAccessLevelId is a numeric Long (e.g. 1, 2, 3) drawn from a catalogue endpoint. These clarifications prevent the two most likely invocation errors.

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 specific verb and resource ("Change a member's workspace access level") and implicitly scopes to an existing workspace member, which separates it from pm_remove_workspace_member, pm_add_team_member, and pm_list_workspace_members. No ambiguity about what the tool does.

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 explicit prerequisites: call pm_list_workspace_members first to obtain userUuid, and fetch the access-level id from the `/access-levels` catalogue. It also states the required MANAGE_USERS permission and API-key scope. It does not explicitly say when to use a different tool (e.g., removal or invitation), so it stops just short of the top score.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources