TheeDiscordMCP
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DISCORD_MODE | No | Safety mode. One of read-only, safe-write, full. Defaults to read-only. | read-only |
| DISCORD_BOT_TOKEN | Yes | Your dedicated Discord bot token. | |
| DISCORD_ALLOWED_GUILD_IDS | Yes | The IDs of guilds allowed to be managed, comma-separated if multiple. | |
| DISCORD_ENABLE_DESTRUCTIVE | No | Set to 'true' to enable destructive operations (only when DISCORD_MODE=full). Defaults to 'false'. | false |
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
} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| discord_healthA | Validate the Discord bot token and show the MCP safety configuration without exposing secrets. |
| discord_known_permissionsA | List permission names accepted by blueprint and overwrite tools. |
| discord_get_guildA | Read a guild and its approximate member/presence counts. |
| discord_export_snapshotA | Export guild metadata, roles, channels, AutoMod, onboarding, and welcome screen for planning or backup. |
| discord_list_messagesC | Read recent messages from a channel in an allowed guild. |
| discord_membersB | Get one member or list members. Bulk listing may require the Guild Members privileged intent. |
| discord_upsert_channelC | Create or modify any guild channel, category, forum, media, stage, voice, or announcement channel using Discord API fields. |
| discord_reorder_channelsB | Bulk reorder channels and optionally move them between categories. |
| discord_set_channel_permissionC | Create or replace a role/member permission overwrite on a channel. |
| discord_delete_channelA | Delete a channel. Requires full mode, destructive enablement, and an exact confirmation string. |
| discord_upsert_roleC | Create or modify a guild role. Role hierarchy still limits what the bot can manage. |
| discord_reorder_rolesB | Bulk reorder roles below the bot's highest role. |
| discord_delete_roleC | Delete a role with an exact confirmation string. |
| discord_member_rolesB | Add and remove multiple roles from a guild member. |
| discord_moderate_memberC | Modify, timeout, kick, ban, or unban a guild member. Removal actions require exact confirmation. |
| discord_messageC | Send, edit, delete, pin, or unpin a message in an allowed guild channel. |
| discord_current_bot_profileA | Read or modify this operator bot's username, avatar, and banner. Image fields accept Discord data URIs. |
| discord_current_applicationC | Read or modify the current Discord application profile and installation metadata. |
| discord_modify_guildB | Modify guild-level settings such as name, description, locale, verification, rules channel, and safety channels. |
| discord_automodC | List, create, modify, or delete Discord AutoMod rules. |
| discord_onboardingC | Get or replace guild onboarding configuration. Discord enforces Community onboarding constraints. |
| discord_welcome_screenC | Get or modify the Community welcome screen. |
| discord_emojiC | List, create, modify, or delete guild emojis. Create accepts a Discord data URI in body.image. |
| discord_audit_logB | Read Discord audit log entries for the allowed guild. |
| discord_plan_blueprintA | Compare a version-1 server blueprint with the live guild and return a non-destructive action plan. |
| discord_apply_blueprintA | Idempotently create/update roles, categories, channels, forum tags, permissions, messages, pins, and guild settings from one blueprint. It never deletes unmanaged resources. |
| discord_raw_guild_requestA | Advanced escape hatch for Discord REST endpoints not covered above. Routes are restricted to the allowed guild, verified channels, webhooks, invites, stage instances, and this bot's guild commands. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 27 tools
Each tool targets a distinct Discord resource or action, such as channels, roles, members, messages, emojis, or guild settings. Even the blueprint-related tools have non-overlapping responsibilities: export reads, plan compares, and apply writes. No two tools appear to do the same thing.
All tools share the 'discord_' prefix, and most follow a clear verb_noun pattern (e.g., discord_get_guild, discord_upsert_channel, discord_apply_blueprint). Some tools use plain nouns (discord_members, discord_emoji, discord_message), which is a minor deviation but still predictable and readable.
With 27 tools, this server exceeds the typical range for a well-scoped MCP (3-15) and falls into the 'too many' category. While each tool covers a different area, the high number may burden agents with too many choices, though the broad Discord API scope partially justifies it.
The tool set covers comprehensive CRUD and lifecycle operations for guilds, channels, roles, members, messages, emojis, onboarding, welcome screen, AutoMod, and bot settings. It also includes a blueprint system and a raw API escape hatch, so there are no obvious gaps in Discord server management.