Barry Yip/mcp-discord
Built by Metorial, the integration platform for agentic AI.
Barry Yip/mcp-discord
Server Summary
Login to Discord bot
Get server information
Read channel messages
Delete channel messages
Send messages to channels
Retrieve forum channel lists
Create channels
Delete channels
A Discord MCP (Model Context Protocol) server that enables AI assistants to interact with the Discord platform.
MCP-Discord provides the following Discord-related functionalities:
Node.js (v16.0.0 or higher)
npm (v7.0.0 or higher)
A Discord bot with appropriate permissions
Permissions required in your Discord server:
Add your Discord bot to your server
INSERT_CLIENT_ID_HERE
with your bot's client ID):
Note:
According to Discord's security model, a bot can only access information from servers it has been explicitly added to.
If you want to use this MCP server to access a specific Discord server, you must add the bot to that server first.
Use the invite link below to add the bot to your target server.
You can use it with the following command:
npx mcp-discord --config ${DISCORD_TOKEN}
For more details, you can check out the NPM Package.
To install mcp-discord automatically via Smithery
You can run mcp-discord using Docker. The Docker images are automatically built and published to Docker Hub.
Docker Hub Repository: barryy625/mcp-discord
# Pull the latest image
docker pull barryy625/mcp-discord:latest
# Run with environment variable
docker run -e DISCORD_TOKEN=your_discord_bot_token -p 8080:8080 barryy625/mcp-discord:latest
# Or run with command line config
docker run -p 8080:8080 barryy625/mcp-discord:latest --config "your_discord_bot_token"
Available Tags:
latest
- Latest stable version from main branchv1.3.3
, etc. - Specific version releases# Clone the repository
git clone https://github.com/barryyip0625/mcp-discord.git
cd mcp-discord
# Install dependencies
npm install
# Compile TypeScript
npm run build
A Discord bot token is required for proper operation. The server supports two transport methods: stdio and streamable HTTP.
stdio (Default)
streamable HTTP
You can provide configuration in two ways:
DISCORD_TOKEN=your_discord_bot_token
# For stdio transport (default)
node build/index.js --config "your_discord_bot_token"
# For streamable HTTP transport
node build/index.js --transport http --port 3000 --config "your_discord_bot_token"
You can use Docker containers with both Claude and Cursor:
{
"mcpServers": {
"discord": {
"command": "docker",
"args": [
"run",
"--rm",
"-e",
"DISCORD_TOKEN=your_discord_bot_token",
"-p",
"8080:8080",
"barryy625/mcp-discord:latest",
"--transport",
"http",
"--port",
"8080"
]
}
}
}
{
"mcpServers": {
"discord": {
"command": "node",
"args": [
"path/to/mcp-discord/build/index.js",
"--config",
"your_discord_bot_token"
]
}
}
}
{
"mcpServers": {
"discord": {
"command": "node",
"args": [
"path/to/mcp-discord/build/index.js",
"--transport",
"http",
"--port",
"3000",
"--config",
"your_discord_bot_token"
]
}
}
}
{
"mcpServers": {
"discord": {
"command": "cmd",
"args": [
"/c",
"node",
"path/to/mcp-discord/build/index.js",
"--config",
"your_discord_bot_token"
]
}
}
}
{
"mcpServers": {
"discord": {
"command": "cmd",
"args": [
"/c",
"node",
"path/to/mcp-discord/build/index.js",
"--transport",
"http",
"--port",
"3000",
"--config",
"your_discord_bot_token"
]
}
}
}
discord_send
: Send a message to a specified channel (supports both channel ID and channel name)discord_get_server_info
: Get Discord server informationdiscord_create_text_channel
: Create a text channeldiscord_delete_channel
: Delete a channeldiscord_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 postdiscord_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 channeldiscord_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 mode
npm run dev