Discord MCP
A MCP Server for Interacting with Discord Servers
Discord MCP Server
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, and server settings via MCP.
Features
- Per-token bot sessions with automatic session management
- Channel management: create, edit, delete, organize
- Role management: create, edit, delete, assign, remove
- Permission configuration for channels, categories, and roles
- Message operations: send, edit, delete, bulk delete, retrieve
- Moderation actions: timeout, kick, ban, enforce role policies
- Guild/server settings management
- Polls: create, end, and get results
- Scheduled events: create, edit, delete, list, get attendees
- Threads & forums: create, edit, delete, manage members, forum posts
- Webhooks: create, send messages, list, delete
- Invites: create, list, delete
- Emoji & stickers: create, delete, list
- Reactions: add, remove, list users, clear
- AutoMod: create, edit, delete, list rules
- Audit log: query with filters
- Member info: get details, list members, edit nicknames/mute/deafen
- Status endpoints for bot sessions
Installation
uv sync
Configuration
Copy the template .env file and modify it as needed:
cp .env.template .env
Usage
Run the MCP server locally:
uv run python -m discord_mcp.main
Or use it without a local setup:
uv run --with git+https://github.com/ExilProductions/discord-mcp discord-mcp
MCP Client Configuration Example
Example configuration for OpenCode using a remote MCP server:
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"discord-mcp": {
"type": "remote",
"url": "http://localhost:8000/mcp",
"enabled": true,
"headers": {
"Authorization": "YOUR_DISCORD_BOT_TOKEN"
}
}
}
}
This can be used by any client that supports MCP.
MCP Tools
Channel Management
create_channel- Create a text, voice, news, stage, forum, media, or category channeledit_channel- Edit a channel's settingsdelete_channel- Delete a channelmove_channel- Move channel to new position/categoryget_channel- Get channel informationget_channels- List all channels in guild
Role Management
create_role- Create a new roleedit_role- Edit a roledelete_role- Delete a roleassign_role- Assign role to memberremove_role- Remove role from memberget_role- Get role informationget_roles- List all roles in guild
Permission Management
set_channel_permissions- Set channel permissionsset_category_permissions- Set category permissionsset_role_permissions- Update role permissionsget_channel_permissions- Get channel permission overwritesget_category_permissions- Get category permission overwritesremove_channel_permissions- Remove permission overwrites
Message Operations
send_message- Send a message (supports embeds, TTS, mentions, references)edit_message- Edit a messagedelete_message- Delete a messagebulk_delete_messages- Bulk delete messagesget_message- Get a messageget_channel_messages- Get channel message history
Moderation
timeout_user- Timeout a memberremove_timeout- Remove timeout from memberkick_user- Kick a memberban_user- Ban a memberunban_user- Unban a memberenforce_role_policy- Enforce role policy (kick/ban members missing required roles)get_guild_bans- List guild bansget_member_timeout_status- Check timeout status
Guild Management
get_guild_settings- Get server settings (name, description, verification level, etc.)edit_guild_settings- Edit server settings
Polls
create_poll- Create a poll in a channelend_poll- End an active pollget_poll_results- Get poll vote counts and results
Scheduled Events
create_scheduled_event- Create a scheduled event (voice, stage, or external)edit_scheduled_event- Edit a scheduled eventdelete_scheduled_event- Delete a scheduled eventlist_scheduled_events- List all scheduled events in a guildget_scheduled_event_users- Get users interested in an event
Threads & Forums
create_thread- Create a thread (optionally from a message)edit_thread- Edit thread settings (name, archive, lock, slowmode)delete_thread- Delete a threadlist_threads- List active and archived threads in a channeladd_thread_member- Add a member to a threadremove_thread_member- Remove a member from a threadcreate_forum_post- Create a forum post with tags
Webhooks
create_webhook- Create a webhook for a channelsend_webhook_message- Send a message via webhooklist_webhooks- List webhooks for a guild or channeldelete_webhook- Delete a webhook
Invites
create_invite- Create a channel invitelist_invites- List all guild invitesdelete_invite- Delete an invite
Emoji & Stickers
create_emoji- Create a custom emojidelete_emoji- Delete a custom emojilist_emojis- List all custom emojis in a guildlist_stickers- List all stickers in a guild
Reactions
add_reaction- Add a reaction to a messageremove_reaction- Remove a reaction from a messageget_reaction_users- Get users who reacted with a specific emojiclear_reactions- Clear all or specific reactions from a message
AutoMod
create_automod_rule- Create an automod rule (keyword, spam, preset, mention spam)edit_automod_rule- Edit an automod ruledelete_automod_rule- Delete an automod rulelist_automod_rules- List all automod rules in a guild
Audit Log
get_audit_log- Query audit log with filters (user, action type, limit)
Members
get_member_info- Get detailed member profile infolist_members- List guild membersedit_member- Edit member (nickname, mute, deafen)
Status
get_bot_status- Get bot status and session info
เซิร์ฟเวอร์ที่เกี่ยวข้อง
Novita AI
Interact with the Novita AI API for image generation and other AI tasks.
Qwen Max
An MCP server for the Qwen Max large language model, powered by Dashscope.
MCP Force
Expose Salesforce APIs as tools for AI agents, enabling natural language interaction with Salesforce organizations.
Netlify
Create, build, deploy, and manage Netlify resources using natural language.
S2T Accelerators
36 enterprise MCP tools for AWS security, infrastructure generation, AI workflows, and AI agent governance.
Remote MCP Server on Cloudflare
An MCP server designed to run on Cloudflare Workers, featuring OAuth login support and Cloudflare KV integration for data storage.
Bybit API
An interface to interact with the Bybit cryptocurrency exchange API.
Cloudflare to GitHub Backup MCP Server
Backs up Cloudflare projects to a specified GitHub repository.
Simple OpenStack MCP
Execute OpenStack CLI commands using LLMs. Requires a configured OpenStack CLI environment.
Hetzner Cloud MCP Server
MCP server for the Hetzner Cloud API — manage servers, networks, volumes, firewalls, load balancers, and more. 104 tools across 13 resource domains.