Discord
Integrates with
Discord
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
- Get server information
- Read/delete channel messages
- Send messages to specified channels
- Retrieve forum channel lists
- Create/delete/reply to forum posts
- Create/delete text channels
- Add/remove message reactions
- Create/edit/delete/use webhooks
Table of Contents
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 Discorddiscord_send
: Send a message to a specified channeldiscord_get_server_info
: Get Discord server information
Channel Management
discord_create_text_channel
: Create a text channeldiscord_delete_channel
: Delete a channel
Forum Functions
discord_get_forum_channels
: Get a list of forum channelsdiscord_create_forum_post
: Create a forum postdiscord_get_forum_post
: Get a forum postdiscord_reply_to_forum
: Reply to a forum postdiscord_delete_forum_post
: Delete a forum post
Messages and Reactions
discord_read_messages
: Read channel messagesdiscord_add_reaction
: Add a reaction to a messagediscord_add_multiple_reactions
: Add multiple reactions to a messagediscord_remove_reaction
: Remove a reaction from a messagediscord_delete_message
: Delete a specific message from a channel
Webhook Management
discord_create_webhook
: Creates a new webhook for a Discord channeldiscord_send_webhook_message
: Sends a message to a Discord channel using a webhookdiscord_edit_webhook
: Edits an existing webhook for a Discord channeldiscord_delete_webhook
: Deletes an existing webhook for a Discord channel
Development
## Development mode
npm run dev