Discord MCP Server
A Model Context Protocol (MCP) server that provides Discord integration capabilities to MCP clients like Claude Desktop.
Features
Server Information
get_server_info
: Get detailed server informationlist_members
: List server members and their roles
Message Management
send_message
: Send a message to a channelread_messages
: Read recent message historyadd_reaction
: Add a reaction to a messageadd_multiple_reactions
: Add multiple reactions to a messageremove_reaction
: Remove a reaction from a messagemoderate_message
: Delete messages and timeout users
Channel Management
create_text_channel
: Create a new text channeldelete_channel
: Delete an existing channel
Role Management
add_role
: Add a role to a userremove_role
: Remove a role from a user
Webhook Management
create_webhook
: Create a new webhooklist_webhooks
: List webhooks in a channelsend_webhook_message
: Send messages via webhookmodify_webhook
: Update webhook settingsdelete_webhook
: Delete a webhook
Prerequisites
Set up your Discord bot:
- Create a new application at Discord Developer Portal
- Create a bot and copy the token
- Enable required privileged intents:
- MESSAGE CONTENT INTENT
- PRESENCE INTENT
- SERVER MEMBERS INTENT
- Invite the bot to your server using OAuth2 URL Generator
Python Requirements:
- Python 3.8 or higher
- pip (Python package installer)
Installation
Clone the Repository:
git clone https://github.com/pashpashpash/mcp-discord.git cd mcp-discord
Create and Activate Virtual Environment:
# On Windows python -m venv venv venv\Scripts\activate # On macOS/Linux python -m venv venv source venv/bin/activate
Install Dependencies:
pip install -e .
Note: If using Python 3.13+, also install audioop:
pip install audioop-lts
Configure Claude Desktop:
Add this to your claude_desktop_config.json:
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json
- Windows:
%APPDATA%/Claude/claude_desktop_config.json
{
"mcpServers": {
"discord": {
"command": "python",
"args": ["-m", "mcp_discord"],
"cwd": "path/to/mcp-discord",
"env": {
"DISCORD_TOKEN": "your_bot_token"
}
}
}
}
Note:
- Replace "path/to/mcp-discord" with the actual path to your cloned repository
- Replace "your_bot_token" with your Discord bot token
Debugging
If you run into issues, check Claude Desktop's MCP logs:
tail -n 20 -f ~/Library/Logs/Claude/mcp*.log
Common issues:
Token Errors:
- Verify your Discord bot token is correct
- Check that all required intents are enabled
Permission Issues:
- Ensure the bot has proper permissions in your Discord server
- Verify the bot's role hierarchy for role management commands
Installation Issues:
- Make sure you're using the correct Python version
- Try recreating the virtual environment
- Check that all dependencies are installed correctly
License
MIT License - see LICENSE file for details.
Note: This is a fork of the original mcp-discord repository.