Discord MCP Server
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| HOST | No | HTTP server host (use 0.0.0.0 for remote access) | localhost |
| PORT | No | HTTP server port (when using http transport) | 3000 |
| TRANSPORT | No | Transport mode: stdio or http | stdio |
| DISCORD_BOT_TOKEN | Yes | Your Discord bot token (required) |
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_list_guildsA | List all Discord servers (guilds) the bot has access to. Returns server names, IDs, member counts, and owner information. Args:
Returns: List of guilds with id, name, memberCount, icon, ownerId |
| discord_get_guildA | Get detailed information about a specific Discord server. Args:
Returns: Server details including name, member count, owner, and icon |
| discord_leave_guildA | Leave a Discord server (guild). The bot will no longer have access to this server. WARNING: This is a destructive action. The bot will need to be re-invited to rejoin. Args:
Returns: Confirmation message with server details |
| discord_edit_guildA | Edit server settings like name, verification level, and system channel. Args:
Returns: Updated server details |
| discord_list_channelsA | List channels in a Discord server. Args:
Returns: List of channels with id, name, type, topic, and category info |
| discord_get_channelA | Get detailed information about a specific channel. Args:
Returns: Channel details including name, type, topic, and category |
| discord_create_channelA | Create a new channel or category in a Discord server. Args:
Returns: The created channel's details |
| discord_delete_channelA | Delete a channel from a Discord server. This action is permanent! Args:
Returns: Confirmation of deletion |
| discord_edit_channelA | Edit a channel's properties including name, topic, category, position, and more. Args:
Returns: Updated channel details |
| discord_set_channel_permissionsA | Set permission overrides for a role or member on a channel. Common permission names:
Args:
Returns: Confirmation of permission changes |
| discord_remove_channel_permissionsB | Remove all permission overrides for a role or member on a channel. Args:
Returns: Confirmation of removal |
| discord_get_channel_permissionsA | Get all permission overrides for a channel. Args:
Returns: List of permission overrides with allow/deny for each role/member |
| discord_sync_channel_permissionsA | Sync a channel's permissions with its parent category. Args:
Returns: Confirmation of sync |
| discord_send_messageA | Send a message to a Discord channel. Args:
Returns: The sent message details including ID |
| discord_get_messagesA | Retrieve messages from a Discord channel. Args:
Returns: List of messages with content, author, timestamp, attachments |
| discord_delete_messageA | Delete a message from a Discord channel. Args:
Returns: Confirmation of deletion |
| discord_edit_messageA | Edit a message sent by the bot. Args:
Returns: Confirmation of edit |
| discord_add_reactionA | Add an emoji reaction to a message. Args:
Returns: Confirmation of reaction added |
| discord_remove_reactionA | Remove the bot's emoji reaction from a message. Args:
Returns: Confirmation of reaction removed |
| discord_pin_messageB | Pin a message in a channel. Args:
Returns: Confirmation of message pinned |
| discord_unpin_messageA | Unpin a message in a channel. Args:
Returns: Confirmation of message unpinned |
| discord_get_pinned_messagesB | Get all pinned messages in a channel. Args:
Returns: List of pinned messages |
| discord_list_membersA | List members in a Discord server. Args:
Returns: List of members with username, nickname, roles, join date |
| discord_get_memberA | Get detailed information about a specific member. Args:
Returns: Member details including username, nickname, roles, join date |
| discord_move_memberA | Move a member to a different voice channel or disconnect them from voice. The member must currently be connected to a voice channel to be moved. Args:
Returns: Confirmation of move or disconnect |
| discord_set_nicknameA | Set or clear a member's nickname. Args:
Returns: Confirmation of nickname change |
| discord_list_rolesA | List all roles in a Discord server. Args:
Returns: List of roles with name, color, position, permissions |
| discord_add_roleA | Add a role to a Discord member. Args:
Returns: Confirmation of role added |
| discord_remove_roleA | Remove a role from a Discord member. Args:
Returns: Confirmation of role removed |
| discord_create_roleA | Create a new role in a Discord server. Args:
Returns: The created role's details |
| discord_delete_roleA | Delete a role from a Discord server. This action is permanent! Args:
Returns: Confirmation of deletion |
| discord_edit_roleA | Edit a role's properties including name, color, and permissions. Common permission names:
Args:
Returns: Updated role details |
| discord_set_role_positionsA | Reorder role hierarchy by setting role positions. Higher position = more authority in the hierarchy. The @everyone role is always at position 0. Roles can only manage other roles below them in the hierarchy. IMPORTANT: The bot can only move roles that are below its own highest role in the hierarchy. Args:
Returns: Confirmation of position changes |
| discord_kick_memberA | Kick a member from a Discord server. Args:
Returns: Confirmation of kick |
| discord_ban_memberB | Ban a member from a Discord server. Args:
Returns: Confirmation of ban |
| discord_unban_memberA | Remove a ban from a user. Args:
Returns: Confirmation of unban |
| discord_timeout_memberA | Timeout (mute) a member for a specified duration. They cannot send messages, react, or join voice. Args:
Returns: Confirmation of timeout |
| discord_list_bansA | List all banned users in a server. Args:
Returns: List of banned users with reasons |
| discord_prune_membersA | Remove inactive members from the server. Args:
Returns: Number of members pruned (or would be pruned if dry_run) |
| discord_get_audit_logA | Get the audit log for a server. Shows who did what actions. Common action types: 1=GuildUpdate, 10=ChannelCreate, 11=ChannelUpdate, 12=ChannelDelete, 20=MemberKick, 22=MemberBanAdd, 23=MemberBanRemove, 24=MemberUpdate, 25=MemberRoleUpdate, 30=RoleCreate, 31=RoleUpdate, 32=RoleDelete, 72=MessageDelete, 73=MessageBulkDelete Args:
Returns: Audit log entries with action, user, target, and changes |
| discord_list_automod_rulesA | List all auto moderation rules for a server. Args:
Returns: List of auto moderation rules |
| discord_get_automod_ruleA | Get details of a specific auto moderation rule. Args:
Returns: Auto moderation rule details |
| discord_create_automod_ruleA | Create a new auto moderation rule for a server. Args:
Returns: Created rule details |
| discord_edit_automod_ruleB | Edit an existing auto moderation rule. Args:
Returns: Updated rule details |
| discord_delete_automod_ruleA | Delete an auto moderation rule from a server. Args:
Returns: Confirmation of deletion |
| discord_list_emojisA | List all custom emojis in a server. Args:
Returns: List of emojis with name, ID, and whether animated |
| discord_create_emojiA | Create a custom emoji in a server. Args:
Returns: Created emoji details |
| discord_delete_emojiA | Delete a custom emoji from a server. Args:
Returns: Confirmation of deletion |
| discord_list_stickersA | List all custom stickers in a server. Args:
Returns: List of stickers with name, description, and format |
| discord_delete_stickerA | Delete a custom sticker from a server. Args:
Returns: Confirmation of deletion |
| discord_list_webhooksA | List webhooks in a guild or channel. Args:
Returns: List of webhooks with name, channel, and URL |
| discord_create_webhookB | Create a webhook in a channel. Args:
Returns: Created webhook details including URL |
| discord_edit_webhookA | Edit an existing webhook. Args:
Returns: Updated webhook details |
| discord_delete_webhookA | Delete a webhook. Args:
Returns: Confirmation of deletion |
| discord_list_invitesA | List all active invites in a server. Args:
Returns: List of invites with code, uses, max uses, expiration |
| discord_create_inviteA | Create an invite link for a channel. Args:
Returns: Created invite URL |
| discord_delete_inviteA | Delete an invite by its code. Args:
Returns: Confirmation of deletion |
| discord_list_eventsA | List all scheduled events in a server. Args:
Returns: List of events with name, time, location, and status |
| discord_create_eventB | Create a scheduled event in a server. Args:
Returns: Created event details |
| discord_delete_eventA | Delete a scheduled event from a server. Args:
Returns: Confirmation of deletion |
| discord_get_welcome_screenA | Get the welcome screen configuration for a server. Requires the server to have Community features enabled. Args:
Returns: Welcome screen settings including description and channels |
| discord_edit_welcome_screenA | Edit the welcome screen configuration for a server. Requires the server to have Community features enabled and bot must have MANAGE_GUILD permission. Args:
Returns: Updated welcome screen settings |
| discord_get_onboardingA | Get the onboarding configuration for a server. Onboarding guides new members through a questionnaire to customize their experience. Args:
Returns: Onboarding settings including prompts, options, and default channels |
| discord_edit_onboardingA | Edit the onboarding configuration for a server. Configure prompts/questions that new members answer to customize their server experience. Each prompt can assign roles or show channels based on member selections. Args:
Returns: Updated onboarding configuration |
| discord_setup_onboardingA | Setup and enable onboarding for a server from scratch. This tool configures the complete onboarding experience for new members. The server must have Community features enabled. Requirements:
Args:
Returns: Confirmation with onboarding status |
| discord_get_community_settingsB | Get the community settings for a server. Shows rules channel, updates channel, and other community-related settings. Args:
Returns: Community settings including channels and features |
| discord_setup_communityA | Configure the required channels for a Community server. Sets the rules channel and public updates channel which are required for Community features. The server must already have Community enabled in Discord Server Settings. Args:
Returns: Updated community settings |
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/Oratorian/discord-node-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server