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
관련 서버
Netbird
List and analyze Netbird network peers, groups, policies, and more.
BNBChain MCP
Interact with BNB Chain and other EVM-compatible networks using natural language and AI assistance.
1Panel
An MCP server for 1Panel, a modern Linux server operation and maintenance panel.
Authless Remote MCP Server
An authentication-free, remote MCP server designed for deployment on Cloudflare Workers.
CData PingOne
A read-only MCP server that allows LLMs to query live PingOne data. Requires a separate CData JDBC Driver for PingOne.
Workday by CData
A read-only server for querying live Workday data using LLMs, powered by the CData JDBC Driver.
Alpaca
Interact with the Alpaca trading API for stock trading, market data, and account management.
Civic Nexus
Zero-setup MCP gateway securely connecting AI to your tools with authentication and workflows
CData Paylocity MCP Server
A read-only MCP server by CData that enables LLMs to query live data from Paylocity.
Kaltura MCP Server
A server for performing secure, read-only operations on the Kaltura API.