Discord
About
Integrates with Discord to enable channel management, forum post creation, message sending, and reaction handling through secure authentication and permissions
Details
- Author
- barryyip0625
- Repository
- barryyip0625/mcp-discord
- GitHub stars
- 7
- License
- MIT License
- Categories
- Communication, Other, Automation, Community, Design, Developer Tools, AI, Infrastructure
- Tags
- #integration
Jump to
Setting up with Highlight
This MCP is not yet compatible with Highlight’s one-click setup. However, you can still use it with Highlight by following these steps:
- Download and install Highlight from highlightai.com/download
- Navigate to the plugins tab and select "Add Custom Plugin"
-
Configure the plugin with the settings below
Plugin Name
DiscordCommand (node, npx, python, etc.)nodeArguments-
Argument 1
path/to/mcp-discord/build/index.js
Environment-
DISCORD_TOKEN
your_discord_bot_token
Please refer to the README for specific instructions on how to obtain API keys or other required environment variables.
-
Argument 1
- Enable "Start Automatically" if you want the plugin to start when Highlight launches
From the repository
A Discord bot token is required for proper operation. The server supports two transport methods: stdio and streamable HTTP.
- Administrator (Recommended for quick setup and full functionality)
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
Docker uses the streamable HTTP server by default via build/app.js.
bash
npm install
You can provide configuration in two ways:
1. Environment variables:
DISCORD_TOKEN=your_discord_bot_token
2. Using command line arguments:
```bash
discord_login
Login to Discord using the configured token.
discord_list_servers
List all Discord servers the bot is a member of.
discord_send
Send a message to a specified channel.
discord_get_server_info
Get Discord server information.
discord_create_text_channel
Create a text channel.
discord_create_forum_channel
Create a forum channel.
discord_create_voice_channel
Create a voice channel.
discord_edit_channel
Edit a channel name, topic, parent category, or position.
discord_delete_channel
Delete a channel.
discord_create_category
Create a channel category.
discord_edit_category
Edit a channel category.
discord_delete_category
Delete a channel category.
discord_set_channel_permissions
Set permission overrides for a role or user on a channel/category.
discord_remove_channel_permissions
Remove permission overrides from a channel/category.
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_list_forum_threads
List active and archived threads in a forum channel.
discord_reply_to_forum
Reply to a forum post.
discord_get_forum_tags
Get all available tags for a forum channel.
discord_set_forum_tags
Replace the available tags for a forum channel.
discord_update_forum_post
Update a forum post's title, tags, archived state, or locked state.
discord_delete_forum_post
Delete a forum post.
discord_search_messages
Search messages in a server.
discord_read_messages
Read channel messages (supports `before`, `after`, `around` params — accepts snowflake IDs or ISO 8601 dates).
discord_edit_message
Edit a bot-authored message.
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.
discord_delete_message
Delete a specific message from a channel.
discord_create_webhook
Creates a new webhook for a Discord channel.
discord_send_webhook_message
Sends a message to a Discord channel using a webhook.
discord_edit_webhook
Edits an existing webhook for a Discord channel.
discord_delete_webhook
Deletes an existing webhook for a Discord channel.
discord_list_roles
List all roles in a server.
discord_create_role
Create a role with color, hoist, mentionable, and permission options.
discord_edit_role
Edit an existing role.
discord_delete_role
Delete a role.
discord_assign_role
Assign a role to a member.
discord_remove_role
Remove a role from a member.
discord_list_members
List members in a server with roles.
discord_get_member
Get detailed information about a specific member.
Claude Desktop / Cursor
Paste into your MCP client config file to install this server.
{
"mcpServers": {
"discord": {
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
},
"args": [
"path/to/mcp-discord/build/index.js"
],
"command": "node"
}
}
}
Linux
{
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
},
"args": [
"path/to/mcp-discord/build/index.js"
],
"command": "node"
}
Macos
{
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
},
"args": [
"path/to/mcp-discord/build/index.js"
],
"command": "node"
}
Windows
{
"env": {
"DISCORD_TOKEN": "your_discord_bot_token"
},
"args": [
"path/to/mcp-discord/build/index.js"
],
"command": "node"
}
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:
- Login to Discord bot
- List servers the bot is a member of
- Get server information
- List members and inspect member details
- List, create, edit, delete, assign, and remove roles
- Search messages in a server
- Read, edit, and delete channel messages
- Send messages to specified channels
- Retrieve forum channel lists
- Create, update, delete, and reply to forum posts
- List forum threads and manage forum tags
- Create, edit, and delete text, forum, voice channels, and categories
- Set and remove channel permission overrides
- Add/remove message reactions
- Create/edit/delete/use webhooks
- Prerequisites
- Installation
- Configuration
- Tools Documentation
- Basic Functions
- Channel Management
- Forum Functions
- Messages and Reactions
- Webhook Management
- Role Management
- Member Management
A Discord bot with appropriate permissions
- Bot token (obtainable from theDiscord Developer Portal)
- Message Content Intent enabled
- Server Members Intent enabled
- Presence Intent enabled
Permissions required in your Discord server:
- Administrator (Recommended for quick setup and full functionality)
Or, select only the required permissions:
- Send Messages
- Create Public Threads
- Send Messages in Threads
- Manage Messages
- Manage Threads
- Manage Channels
- Manage Webhooks
- Manage Roles
- Add Reactions
- View Channel
- To add your Discord bot to your server, use one of the following invite links (replaceINSERT_CLIENT_ID_HEREwith your bot's client ID):
- Administrator (full access):https://discord.com/oauth2/authorize?client_id=INSERT_CLIENT_ID_HERE&scope=bot&permissions=8
- Custom permissions (minimum required):https://discord.com/oauth2/authorize?client_id=INSERT_CLIENT_ID_HERE&scope=bot&permissions=52076489808
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 theNPM Package.
To install mcp-discord automatically viaSmithery
You can run mcp-discord using Docker. The Docker images are automatically built and published to Docker Hub.
Docker Hub Repository:barryy625/mcp-discord
Docker uses the streamable HTTP server by default viabuild/app.js.
# Pull the latest image docker pull barryy625/mcp-discord:latest # Run HTTP server on port 8080 docker run -e DISCORD_TOKEN=your_discord_bot_token -p 8080:8080 barryy625/mcp-discord:latest # Override the listening port if needed docker run -e DISCORD_TOKEN=your_discord_bot_token -p 3000:3000 barryy625/mcp-discord:latest --transport http --port 3000
- latest- Latest stable version from main branch
- v1.3.8, 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.
- Traditional stdio transport for basic usage
- Suitable for simple integrations
- HTTP-based transport for more advanced scenarios
- Supports stateless operation
- Configurable port number
You can provide configuration in two ways:
# For stdio transport (default) node build/index.js --config "your_discord_bot_token" # For streamable HTTP transport node build/app.js --transport http --port 3000 --config "your_discord_bot_token"
1. Use Stdio Transport with Claude/Cursor
Usebuild/index.jswhen your MCP client expects a command-based stdio server.
{ "mcpServers": { "discord": { "command": "node", "args": [ "path/to/mcp-discord/build/index.js" ], "env": { "DISCORD_TOKEN": "your_discord_bot_token" } } } }
{ "mcpServers": { "discord": { "command": "node", "args": [ "path/to/mcp-discord/build/index.js" ], "env": { "DISCORD_TOKEN": "your_discord_bot_token" } } } }
This is the recommended setup for local command-based MCP clients.
Usebuild/app.jswhen you want to run mcp-discord as an HTTP MCP server.
DISCORD_TOKEN=your_discord_bot_token node build/app.js --transport http --port 3000
$env:DISCORD_TOKEN="your_discord_bot_token" node build/app.js --transport http --port 3000
docker run -e DISCORD_TOKEN=your_discord_bot_token -p 3000:3000 barryy625/mcp-discord:latest --transport http --port 3000
If you already host mcp-discord elsewhere, point your MCP client at the server's/mcpendpoint instead of launchingbuild/app.jsas a command.
- build/app.jsstarts an HTTP server. It does not speak stdio.
- build/index.jsis the correct entrypoint for command-based stdio MCP clients.
- For hosted HTTP usage, configure your MCP client to connect to the HTTP endpoint URL provided by your deployment.
- The exact HTTP-client configuration format depends on the MCP client you use.
- discord_login: Login to Discord using the configured token
- discord_list_servers: List all Discord servers the bot is a member of
- discord_send: Send a message to a specified channel
- discord_get_server_info: Get Discord server information
- discord_create_text_channel: Create a text channel
- discord_create_forum_channel: Create a forum channel
- discord_create_voice_channel: Create a voice channel
- discord_edit_channel: Edit a channel name, topic, parent category, or position
- discord_delete_channel: Delete a channel
- discord_create_category: Create a channel category
- discord_edit_category: Edit a channel category
- discord_delete_category: Delete a channel category
- discord_set_channel_permissions: Set permission overrides for a role or user on a channel/category
- discord_remove_channel_permissions: Remove permission overrides from a channel/category
- 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_list_forum_threads: List active and archived threads in a forum channel
- discord_reply_to_forum: Reply to a forum post
- discord_get_forum_tags: Get all available tags for a forum channel
- discord_set_forum_tags: Replace the available tags for a forum channel
- discord_update_forum_post: Update a forum post's title, tags, archived state, or locked state
- discord_delete_forum_post: Delete a forum post
- discord_search_messages: Search messages in a server
- discord_read_messages: Read channel messages (supportsbefore,after,aroundparams — accepts snowflake IDs or ISO 8601 dates like"2025-03-01T00:00:00Z")
- discord_edit_message: Edit a bot-authored message
- 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
- discord_delete_message: Delete a specific message from a channel
- discord_create_webhook: Creates a new webhook for a Discord channel
- discord_send_webhook_message: Sends a message to a Discord channel using a webhook
- discord_edit_webhook: Edits an existing webhook for a Discord channel
- discord_delete_webhook: Deletes an existing webhook for a Discord channel
- discord_list_roles: List all roles in a server
- discord_create_role: Create a role with color, hoist, mentionable, and permission options
- discord_edit_role: Edit an existing role
- discord_delete_role: Delete a role
- discord_assign_role: Assign a role to a member
- discord_remove_role: Remove a role from a member
- discord_list_members: List members in a server with roles
- discord_get_member: Get detailed information about a specific member
Enables AI assistants to send notifications and request user input through Discord.
Allows AI assistants to ask questions to humans via Discord.
A Discord relay server to send messages and prompts to a channel and receive responses.
A lightweight notification service that sends webhooks for completed MCP tasks to providers like Discord, Slack, and Teams.
Interact with any other SaaS applications on behalf of your customers.
1001SMS MCP Server helps developers give AI agents access to temporary phone numbers for account registrations, OTP verifications, SMS code receiving, and automated signup workflows. Easy integration for MCP-compatible tools and custom agents.
An MCP server client for the Agent-to-Agent (A2A) protocol, enabling LLMs to interact with A2A agents.
A bridge server connecting Model Context Protocol (MCP) with Agent-to-Agent (A2A) protocol.
A bridge server connecting Model Context Protocol (MCP) with Agent-to-Agent (A2A) protocol.
Production-grade multi-agent communication MCP server with 58 tools over MCP+SSE — real-time messaging, task scheduling, shared memory, and a trust-based evolution engine. SQLite WAL persistence, 4-level RBAC, zero-dependency Python/TypeScript SDKs.
Sign in to leave a review
Use Google, GitHub, or an email account so ratings stay tied to real people.
No reviews posted yet.


