# execute_bulk_member_role_change

Execute one reviewed exact bulk member-role frontier after host write approval, signed interactive approval, a final coherent evidence match, durable coordination over the exact role, member collection, and members, and a pending content-free parent receipt. Writes sequentially by canonical user ID through non-retried exact role endpoints with per-target pending audit and exact readback, stops on the first unsettled target, never replaces role arrays or rolls back, and supports fresh reviewed resumption from verified child checkpoints.

Agent View of the PolicyLayer registry record for `execute_bulk_member_role_change`. HTML page: https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-bulk-member-role-change

## Facts

- Tool: `execute_bulk_member_role_change`
- Server: GuildControl MCP (`guildctl`) — https://policylayer.com/tools/app-lasers-guildcontrol-discord.md
- Install: `npx -y guildctl`
- Homepage: https://github.com/j-256/guildcontrol
- Risk category: Execute (High risk)
- Registry record: grade F, identity unverified
- Server rate-limited: no
- Parameters: 0
- Recommended policy verdict: Rate-limited

## Example call (MCP tools/call, JSON-RPC 2.0)

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "execute_bulk_member_role_change",
    "arguments": {}
  }
}
```

## Why execute_bulk_member_role_change is rated High

Executes permission changes affecting multiple Discord members; requires approval but triggers external operations with side effects.

From the tool's own definition: "Execute bulk member-role change, writes sequentially, stops on first unsettled target"

## Use case

AI agents invoke execute_bulk_member_role_change to trigger actions in GuildControl MCP. What it does depends on the arguments the agent supplies, and its effects often reach beyond the immediate call: builds kicked off, notifications sent, workflows started.

## Recommended policy (PolicyLayer)

Verdict: **Rate-limited**. Enforced by the PolicyLayer MCP gateway (https://policylayer.com/mcp-gateway) before a call reaches GuildControl MCP:

```json
{
  "version": "1",
  "default": "deny",
  "tools": {
    "execute_bulk_member_role_change": {
      "limits": [
        {
          "counter": "execute_bulk_member_role_change_rate",
          "window": "minute",
          "max": 10,
          "scope": "grant"
        }
      ]
    }
  }
}
```

## Other tools on GuildControl MCP (257)

- `delete_messages` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/delete-messages.md
- `execute_bulk_guild_ban` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-bulk-guild-ban.md
- `execute_channel_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-channel-deletion.md
- `execute_direct_message_change` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-direct-message-change.md
- `execute_guild_application_command_change` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-guild-application-command-change.md
- `execute_guild_departure` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-guild-departure.md
- `execute_guild_integration_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-guild-integration-deletion.md
- `execute_guild_prune` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-guild-prune.md
- `execute_invite_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-invite-deletion.md
- `execute_poll_end` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-poll-end.md
- `execute_role_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-role-deletion.md
- `execute_webhook_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-webhook-deletion.md
- `execute_webhook_message_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-webhook-message-deletion.md
- `plan_channel_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-channel-deletion.md
- `plan_direct_message_change` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-direct-message-change.md
- `plan_guild_departure` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-guild-departure.md
- `plan_guild_integration_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-guild-integration-deletion.md
- `plan_invite_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-invite-deletion.md
- `plan_message_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-message-deletion.md
- `plan_poll_end` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-poll-end.md
- `plan_role_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-role-deletion.md
- `plan_webhook_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-webhook-deletion.md
- `plan_webhook_message_deletion` — Destructive — https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-webhook-message-deletion.md
- `compile_component_template` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/compile-component-template.md
- `execute_announcement_crosspost` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-announcement-crosspost.md
- `execute_application_emoji_change` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-application-emoji-change.md
- `execute_application_entitlement_consumption` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-application-entitlement-consumption.md
- `execute_application_intent_enablement` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-application-intent-enablement.md
- `execute_application_test_entitlement_change` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-application-test-entitlement-change.md
- `execute_automod_change` — Execute — https://policylayer.com/tools/app-lasers-guildcontrol-discord/execute-automod-change.md
- …and 227 more: https://policylayer.com/tools/app-lasers-guildcontrol-discord.md

## For agents

This record is a snapshot. Live verdicts and the full registry:

- Check every server in your MCP config at once: `npx -y policylayer stack`
- Vet a server before you add it: install the mcp-precheck skill — `npx skills add https://policylayer.com` (skill text: https://policylayer.com/skill.md)
- Query the registry over MCP: endpoint `https://api.policylayer.com/mcp` — tools `check_mcp_server`, `check_mcp_stack`, `check_tool`, `search_registry`, `get_change_events`

---

Source: the PolicyLayer MCP registry — one continuously verified record per MCP server. Full record: https://policylayer.com/registry?q=app-lasers-guildcontrol-discord · API: https://policylayer.com/registry/api · Policy library: https://policylayer.com/policies/app-lasers-guildcontrol-discord
