Skip to main content
Glama

Remove role

remove_role
Destructive

Set a member's complete workspace role list (full replacement). Any roles not included in the request are revoked. Use this to remove specific roles: fetch current roles via search_workspace_members, omit the role(s) to remove, and pass the remaining roles. Pass an empty role list to strip all roles while keeping the member in the workspace.

Use when: Use when an admin wants to remove one or more roles from a member, or replace the member's entire role set. ALWAYS call search_workspace_members first to get the member's current roles, then pass the new complete list without the removed role(s). To add roles without removing existing ones, use add_role instead.

Behavior: destructive

workspace_id / user_id are injected from request headers.

Input Schema

NameRequiredDescriptionDefault
roleNo
user_idNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • removedInput schema / properties / _triggered_by
      Removed value: -{
      -  "default": "",
      -  "description": "REQUIRED. Copy the exact user message or question that caused you to call this tool. Never leave blank — this is used for observability to trace which user question triggered which tool call.",
      -  "type": "string"
      -}
  2. First observed

TDQS

A4.7/5.0
Behavior4/5

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

Annotations already declare destructiveHint=true, but the description adds the non-obvious consequence: omitted roles are revoked and an empty list strips all roles while keeping the member. It also discloses that workspace_id/user_id come from headers, which is real invocation context. It does not discuss permission/error behavior beyond implying an admin actor, and the 'Behavior: destructive' line merely restates the annotation.

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?

Well front-loaded: the replacement semantics come before the procedure. However, the 'Use when' block repeats the search_workspace_members-then-replace procedure already stated in the opening paragraph, and 'Behavior: destructive' is redundant against the annotations. Slight trimming would improve it.

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

Completeness5/5

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

For a destructive, non-idempotent mutation the description covers the risky semantics (revocation of omitted roles, empty-list behavior), the required prior lookup, and the sibling alternative. An output schema exists, so return values need not be explained, and the schema is minimal enough that nothing further is required.

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

Parameters5/5

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

Schema description coverage is 0% and the schema's 'role' param is an untyped anyOf array/null, so the description carries the full burden — and it does: it defines the parameter as a complete replacement list, explains the empty-list and omission semantics, and clarifies that user_id/workspace_id are header-injected rather than user-supplied. This fully compensates for the 0% coverage.

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?

The description names a specific verb and resource and immediately corrects the misleading tool name by explaining that this is a full-replacement setter ('Set a member's complete workspace role list'), not a single-role deletion. It distinguishes itself from the sibling add_role explicitly, so an agent can pick between them without opening either schema.

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

Usage Guidelines5/5

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

It gives an explicit prerequisite ('ALWAYS call search_workspace_members first'), a step-by-step procedure for the remove case, the add case routed to the alternative tool ('use add_role instead'), and an edge-case recipe (empty list strips all roles). When-to-use and when-to-use-something-else are both covered.

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