MCP-Discord

A Discord MCP (Model Context Protocol) server that enables AI assistants to interact with the Discord platform.
Overview
MCP-Discord provides the following Discord-related functionalities:
- Login to Discord bot
- Send messages to specified channels
- Get server information
- Retrieve forum channel lists
- Create/delete/reply to forum posts
- Read channel messages
- Create/delete text channels
- Add/remove message reactions
Table of Contents
- Prerequisites
- Installation
- Configuration
- Tools Documentation
- Basic Functions
- Channel Management
- Forum Functions
- Messages and Reactions
- Development
- License
Prerequisites
- Node.js (v16.0.0 or higher)
- npm (v7.0.0 or higher)
- A Discord bot with appropriate permissions
- Bot token (obtainable from the Discord Developer Portal)
- Message Content Intent enabled
- Server Members Intent enabled
- Presence Intent enabled
- Permissions in your Discord server:
- Send Messages
- Create Public Threads
- Send Messages in Threads
- Manage Threads
- Manage Channels
- Add Reactions
Installation
Installing via Smithery
To install mcp-discord for Claude Desktop automatically via Smithery:
npx -y @smithery/cli install @barryyip0625/mcp-discord --client claude
Manual Installation
# Clone the repository
git clone https://github.com/barryyip0625/mcp-discord.git
cd mcp-discord
# Install dependencies
npm install
# Compile TypeScript
npm run build
Configuration
A Discord bot token is required for proper operation. You can provide it in two ways:
- Environment variables:
DISCORD_TOKEN=your_discord_bot_token
- Using the
--config
parameter when launching:
node path/to/mcp-discord/build/index.js --config "{\"DISCORD_TOKEN\":\"your_discord_bot_token\"}"
Usage with Claude/Cursor
Claude
{
"mcpServers": {
"discord": {
"command": "node",
"args": [
"path/to/mcp-discord/build/index.js"
],
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
}
}
}
}
Cursor
{
"mcpServers": {
"discord": {
"command": "cmd",
"args": [
"/c",
"node",
"path/to/mcp-discord/build/index.js"
],
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
}
}
}
}
Tools Documentation
Basic Functions
discord_login
: Login to Discord
discord_send
: Send a message to a specified channel
discord_get_server_info
: Get Discord server information
Channel Management
discord_create_text_channel
: Create a text channel
discord_delete_channel
: Delete a channel
Forum Functions
discord_get_forum_channels
: Get a list of forum channels
discord_create_forum_post
: Create a forum post
discord_get_forum_post
: Get a forum post
discord_reply_to_forum
: Reply to a forum post
discord_delete_forum_post
: Delete a forum post
Messages and Reactions
discord_read_messages
: Read channel messages
discord_add_reaction
: Add a reaction to a message
discord_add_multiple_reactions
: Add multiple reactions to a message
discord_remove_reaction
: Remove a reaction from a message
Development
# Development mode
npm run dev
License
MIT License