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 |
Capabilities
Features and capabilities supported by this server
| 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