A production-grade Model Context Protocol (MCP) server for Discord built with FastMCP and discord.py. Provides a complete API surface for managing channels, roles, permissions, messages, moderation…
discord-mcp is an MCP project maintained in the exilproductions/discord-mcp repository. The maintainer describes its purpose as “A production-grade Model Context Protocol (MCP) server for Discord built with FastMCP and discord.py. Provides a complete API surface for managing channels, roles, permissions, messages…”. Read the project documentation for the complete scope.
Project documentation · Repository · Discovery listing. This profile records the public documentation checked on 2026-10-08.
Check the linked publisher documentation and your connected client's tool list. Names and availability can vary with the server version and account permissions.
| Tool | What it does |
|---|---|
| create_channel | Create a text, voice, news, stage, forum, media, or category channel |
| edit_channel | Edit a channel's settings |
| delete_channel | Delete a channel |
| move_channel | Move channel to a category |
| get_channel | Get channel information |
| get_channels | List all channels in guild |
| create_role | Create a new role |
| edit_role | Edit a role (including position for reorder) |
| delete_role | Delete a role |
| assign_role | Assign role to member |
| remove_role | Remove role from member |
| get_role | Get role information |
| get_roles | List all roles in guild |
| set_channel_permissions | Set channel permissions |
| set_category_permissions | Set category permissions |
| set_role_permissions | Update role permissions |
| get_channel_permissions | Get channel permission overwrites |
| get_category_permissions | Get category permission overwrites |
| remove_channel_permissions | Remove permission overwrites |
| inspect_role_permissions | Compact-by-default role permission summary (counts, previews, key capabilities) |
| inspect_member_permissions | Compact-by-default member permission summary (counts, previews, key capabilities) |
| inspect_target_channel_permissions | Full effective permissions for one target in one channel (detail drill-down) |
| list_target_accessible_channels | Compact list of channels a role/member can access |
| list_target_inaccessible_channels | Compact list of channels a role/member cannot access |
| send_message | Send a message (supports embeds, TTS, mentions, references) |
| edit_message | Edit a message |
| delete_message | Delete a message |
| bulk_delete_messages | Bulk delete messages |
| get_message | Get a message |
| get_channel_messages | Get channel message history |
| timeout_user | Timeout a member |
| remove_timeout | Remove timeout from member |
| kick_user | Kick a member |
| ban_user | Ban a member |
| unban_user | Unban a member |
| enforce_role_policy | Enforce role policy (kick/ban members missing required roles) |
| get_guild_bans | List guild bans |
| get_member_timeout_status | Check timeout status |
| get_guild_settings | Get server settings (name, description, verification level, etc.) |
| edit_guild_settings | Edit server settings |
| create_poll | Create a poll in a channel |
| end_poll | End an active poll |
| get_poll_results | Get poll vote counts and results |
| create_scheduled_event | Create a scheduled event (voice, stage, or external) |
| edit_scheduled_event | Edit a scheduled event |
| delete_scheduled_event | Delete a scheduled event |
| list_scheduled_events | List all scheduled events in a guild |
| get_scheduled_event_users | Get users interested in an event |
| create_thread | Create a thread (optionally from a message) |
| edit_thread | Edit thread settings (name, archive, lock, slowmode) |
| delete_thread | Delete a thread |
| list_threads | List active and archived threads in a channel |
| add_thread_member | Add a member to a thread |
| remove_thread_member | Remove a member from a thread |
| create_forum_post | Create a forum post with tags |
| create_webhook | Create a webhook for a channel |
| send_webhook_message | Send a message via webhook |
| list_webhooks | List webhooks for a guild or channel |
| delete_webhook | Delete a webhook |
| create_invite | Create a channel invite |
| list_invites | List all guild invites |
| delete_invite | Delete an invite |
| create_emoji | Create a custom emoji |
| delete_emoji | Delete a custom emoji |
| list_emojis | List all custom emojis in a guild |
| list_stickers | List all stickers in a guild |
| add_reaction | Add a reaction to a message |
| remove_reaction | Remove a reaction from a message |
| get_reaction_users | Get users who reacted with a specific emoji |
| clear_reactions | Clear all or specific reactions from a message |
| create_automod_rule | Create an automod rule (keyword, spam, preset, mention spam) |
| edit_automod_rule | Edit an automod rule |
| delete_automod_rule | Delete an automod rule |
| list_automod_rules | List all automod rules in a guild |
| get_audit_log | Query audit log with filters (user, action type, limit) |
| get_member_info | Get detailed member profile info |
| list_members | List guild members |
| edit_member | Edit member (nickname, mute, deafen) |
| get_bot_status | Get bot status and session info |
Your assistant inside the workspace — read channels, search history, post messages and tame the noise.
Build a programmable telecommunications stack for connecting telephony services with the Internet via a cloud-based utility.
Inbox intelligence — search, read, draft and send Gmail through your assistant with OAuth auto-setup.
Read and write Jira, Confluence, Bitbucket, JSM and Compass from your AI client — with your own permissions.
Read and send Telegram messages through your assistant — chats, channels and history via the client API.
Enables Discord bot integration with Model Context Protocol (MCP) compatible applications like Claude Desktop.