# plan_guild_blueprint

Prepare the next process-bound frontier of one caller-retained declarative Discord guild blueprint. The result overlays every normalized manifest entry with freshly-assessed or deferred live status, while only the current complete-evidence frontier can be executable; it never simulates future Discord IDs or post-write state. Additive structure, exact-ID role configuration, bottom-up exact or receipt-bound role-order adjacency, exact-ID channel metadata, bottom-up exact or receipt-bound channel-order adjacency, exact-channel one-target permission-overwrite convergence, profile, settings, monotonic Community enablement and routing, Welcome Screen, onboarding, staged AutoMod, and ordered static Components V2 publications delegate to their existing complete-evidence domains in a fixed order. Role-configuration, channel-metadata, and overwrite collections are canonicalized by snowflake and target identity; roleOrder and channelOrders preserve their semantic top-to-bottom chains. Channel-order references are globally unique before and after resolution. Each adjacency preserves exact permission overwrites and requires complete affected groups, capacity, movement authority, one non-retried write, and newer coherent Gateway plus HTTP readback. A live cross-parent adjacency returns a content-free blocker unless its chain contains literal acknowledgeReparenting=true; permission synchronization is never implied. No live target is matched by name. Every hierarchy, ordering, or overwrite frontier retains its standalone capability, exact scope, permission, receipt, coordination, non-retry, and readback gates. A completed matching nested receipt satisfies only fresh exact current state; drift blocks key reuse. A requested enabled Welcome Screen or onboarding phase is blocked early when Community is disabled and no acknowledged Community phase can establish it. Unbound AutoMod creation recovers identity only from a matching content-free request-bound receipt, never a name scan; exact existing rules use exact IDs, and policy changes advance through separate disable, configure, and enable reviews. Publication recovery uses content-free keyed receipts and one exact receipt-bound message read, never a history scan. Requested scaffold channel and role keys become exact domain references only where permitted. Returns one transient frontier or content-free channel-ordering, Community, AutoMod, or publication blocker while persisting neither the manifest nor its content.

Agent View of the PolicyLayer registry record for `plan_guild_blueprint`. HTML page: https://policylayer.com/tools/app-lasers-guildcontrol-discord/plan-guild-blueprint

## Facts

- Tool: `plan_guild_blueprint`
- 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: Write (Medium 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": "plan_guild_blueprint",
    "arguments": {}
  }
}
```

## Why plan_guild_blueprint is rated Medium

Modifies Discord guild structure reversibly via declarative blueprint configuration affecting roles, channels, and permissions.

From the tool's own definition: "guild blueprint, overlays manifest, role configuration, channel metadata, permission-overwrite"

## Use case

AI agents use plan_guild_blueprint to create or update resources in GuildControl MCP, usually the action step of a workflow, after the agent has gathered context. Every call changes real data in your GuildControl MCP environment.

## 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": {
    "plan_guild_blueprint": {
      "limits": [
        {
          "counter": "plan_guild_blueprint_rate",
          "window": "minute",
          "max": 30,
          "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
