discord-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| DISCORD_TOKEN | Yes | Your Discord bot token from the Discord Developer Portal. | |
| DISCORD_PRIVILEGED_INTENTS | No | Set to 'true' to enable Server Members Intent and Message Content Intent (optional). Default is '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 |
|---|---|
| list_serversA | List the Discord servers (guilds) the bot has been added to. |
| get_server_infoB | Show an overview of a server: channel counts, role count, owner, members. |
| edit_serverA | Update server settings. Only provided fields are changed. Requires Manage Server (and Manage Guild for icon/banner changes). |
| get_audit_logA | Browse the server's audit log. Optionally filter by action type or the user who performed the action. Requires View Audit Log permission. |
| list_channelsB | List every channel in a server with its type, id, and parent category. |
| create_channelB | Create a channel. type can be: text, voice, category, announcement, stage, or forum. Use |
| edit_channelC | Rename a channel, change its topic, or move it into/out of a category. |
| delete_channelA | Permanently delete a channel. This cannot be undone. |
| send_messageA | Post a message to a text channel. Supports standard Discord markdown. |
| read_messagesA | Read the most recent messages from a channel (newest last). Reading the text body requires DISCORD_PRIVILEGED_INTENTS=true plus the Message Content intent. |
| delete_messageB | Delete a single message by its id. |
| edit_messageA | Edit the content of a message the bot sent. The bot can only edit its own messages. |
| pin_messageB | Pin a message in its channel. Requires Manage Messages permission. |
| unpin_messageA | Remove a message from a channel's pinned list. Requires Manage Messages permission. |
| get_pinned_messagesA | Fetch all pinned messages in a channel, newest first. |
| add_reactionA | React to a message with a Unicode emoji or custom guild emoji (name or id). |
| remove_reactionA | Remove a reaction from a message. Omit user to remove the bot's own reaction. Removing another user's reaction requires Manage Messages permission. |
| get_reactionsB | List users who reacted to a message with a specific emoji. |
| list_rolesA | List all roles in a server, highest first. |
| create_roleA | Create a role with an optional color, permissions, and display options. |
| edit_roleA | Edit an existing role's name, color, permissions, or display options. Only provided fields are changed. |
| delete_roleB | Delete a role from the server. |
| assign_roleC | Give a role to a member. |
| remove_roleC | Remove a role from a member. |
| list_membersA | List members of a server. Requires DISCORD_PRIVILEGED_INTENTS=true and the Server Members intent enabled in the Developer Portal. |
| get_memberA | Show details about one member: nickname, join date, and roles. |
| kick_memberA | Remove a member from the server. They can rejoin with a new invite. |
| ban_memberA | Ban a user from the server, optionally deleting their recent messages. |
| list_bansB | List all banned users in a server with their ban reasons. |
| unban_memberA | Lift a ban. Accepts a user id or username (looked up from the ban list). |
| timeout_memberA | Temporarily mute a member for a number of minutes. Use 0 to clear a timeout. |
| move_member_to_voiceA | Move a member who is already in a voice channel to a different one. The member must be connected to voice for this to succeed. |
| server_muteB | Toggle server-level mute for a member in a voice channel. Pass mute=false to unmute. |
| server_deafenC | Toggle server-level deafen for a member in a voice channel. Pass deafen=false to undeafen. |
| list_channel_permissionsA | Show the permission overwrites on a channel — which roles/members are explicitly allowed or denied which permissions. Anything not listed is inherited. |
| set_channel_permissionA | Allow or deny specific permissions for a role or member on one channel (a permission overwrite). Examples: deny "ViewChannel" for @everyone to make a channel private; allow "ViewChannel" and "SendMessages" for a Team role. This merges with any existing overwrite. Use |
| remove_channel_permissionA | Remove a role's or member's entire permission overwrite from a channel, reverting them to inherited permissions. |
| create_threadA | Start a thread from an existing message, or as a standalone thread in a text/forum channel. Pass message_id to branch from a message; omit it for a standalone thread. |
| list_threadsA | List active threads in a channel. Pass archived=true to include archived threads. |
| archive_threadA | Archive a thread, optionally locking it so only moderators can unarchive it. |
| unarchive_threadA | Reopen an archived thread so members can post again. |
| create_inviteB | Generate an invite link for a channel. |
| list_invitesA | Show all active invites for the server with use counts and expiry info. |
| delete_inviteB | Revoke an invite by its code. Accepts the full URL or just the code. |
| create_eventA | Schedule a guild event. For voice/stage events pass a voice channel; for external events pass a location string instead. |
| list_eventsA | Fetch upcoming scheduled events in the server with interested-user counts. |
| delete_eventB | Cancel and remove a scheduled guild event by name or id. |
| create_webhookA | Create a webhook for a channel. Requires Manage Webhooks permission. |
| list_webhooksB | List all webhooks in the server, optionally filtered to one channel. |
| delete_webhookA | Remove a webhook by name or id. Requires Manage Webhooks permission. |
| send_webhook_messageB | Post a message through a webhook. Supports a custom username and avatar override for this message. |
| list_emojisA | Return all custom emoji in the server with their names and ids. |
| create_emojiA | Upload a new custom emoji from a URL or base64-encoded image. Requires Manage Expressions permission. |
| delete_emojiA | Remove a custom emoji by name or id. Requires Manage Expressions permission. |
| list_stickersB | Fetch all guild stickers with their names, formats, and tags. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
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/grooving6/discord-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server