discord-provisioner-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DRY_RUN | No | When true, no write request ever reaches Discord. Default is false. | false |
| LOG_LEVEL | No | Logging level: debug, info, warn, error, silent. Default is info. | info |
| MCP_AUTH_TOKEN | No | Bearer token HTTP clients must present. Required when running in HTTP mode (with --http). | |
| WRITE_DELAY_MS | No | Minimum delay between consecutive writes. Default is 250. | 250 |
| DISCORD_BOT_TOKEN | Yes | Bot token from the developer portal. Required. | |
| DISCORD_API_VERSION | No | REST API version segment. Default is v10. | v10 |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": true
} |
| prompts | {
"listChanged": true
} |
| resources | {
"listChanged": true
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| list_guildsA | List every guild (server) the bot is currently a member of. |
| get_guildA | Fetch a guild's settings and full role list (with permission bitfields decoded to names). |
| list_channelsA | List every channel in a guild, including categories, with permission overwrites decoded to permission names. |
| list_rolesA | List every role in a guild, highest first, with permission bitfields decoded to names. |
| get_bot_infoA | Show the bot's identity, how many guilds it is in, and whether it is still under the 10-guild limit that gates guild creation. |
| get_blueprint_templateA | Get a ready-made server blueprint for a common community type (gaming, dev, support, creator) to use as a starting point for apply_blueprint or create_guild -- rename and adjust instead of designing from zero. Call without arguments to list the available templates. The design conventions behind them live in the discord://design-guide resource. |
| create_guildA | Create a new guild (server) owned by the bot, optionally provisioning the entire structure (roles, categories, channels, permission overwrites) from a blueprint in a single request. Only works while the bot is in fewer than 10 guilds; otherwise create the server manually, invite the bot, and use apply_blueprint. |
| apply_blueprintA | Diff a declarative blueprint against a guild's live roles and channels, then apply the difference in order (roles -> role positions -> categories -> channels -> permission overwrites). Nothing is ever deleted; live entities missing from the blueprint are reported as orphans. mode=create_only (default) only creates missing entities; mode=reconcile also updates entities that differ. With dry_run=true the full ordered plan is returned and no write reaches Discord. Applying the same blueprint twice yields zero operations the second time. |
| create_roleA | Create a role in a guild. Permissions are given as permission names (e.g. VIEW_CHANNEL, SEND_MESSAGES), never raw bitfields. |
| create_channelA | Create a channel (or category) in a guild. Overwrite permissions are given as permission names. |
| set_channel_permissionsA | Set the permission overwrite for a role or member on a channel. REPLACES any existing overwrite for that target on that channel. The standard private-channel pattern: deny VIEW_CHANNEL for the guild's @everyone role (target_id = guild id, target_type = role) and allow VIEW_CHANNEL for the roles that should see it. |
| reorder_channelsA | Change the positions (and optionally the parent category) of multiple channels in one request. Positions are relative within each channel group (categories, text-like, voice). |
| reorder_rolesA | Change the positions of multiple roles in one request. Higher position = higher in the role list. The bot can only move roles below its own highest role. |
| delete_channelA | Permanently delete a channel or category. THIS IS IRREVERSIBLE: all messages in the channel are lost and cannot be restored. Requires confirm=true as an explicit acknowledgement. |
| delete_roleA | Permanently delete a role from a guild. THIS IS IRREVERSIBLE: the role is removed from every member and every permission overwrite. Requires confirm=true as an explicit acknowledgement. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
| design_server | Compose a server blueprint following the design guide, starting from a template when one fits |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| design-guide | Conventions for laying out roles, categories, channels, and permissions in a well-run Discord server |
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/TinyGecko920/discord-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server