
A MCP server for the Discord integration. Enable your AI assistants to seamlessly interact with Disc
A MCP server for the Discord integration. Enable your AI assistants to seamlessly interact with Discord. Enhance your Discord experience with powerful automation capabilities.
·
A Model Context Protocol (MCP) server for the Discord API using (JDA), designed to integrate Discord bots with MCP-compatible applications such as Claude, ChatGPT etc. It allows AI assistants to interact with Discord by managing channels, sending messages, and retrieving server information. Ideal for building powerful Discord automation and AI-driven workflows.
[!NOTE] Docker installation is required. Full instructions can be found on docker.com.
export DISCORD_TOKEN="YOUR_DISCORD_BOT_TOKEN"
export DISCORD_GUILD_ID="OPTIONAL_DEFAULT_SERVER_ID"
export SPRING_PROFILES_ACTIVE=http[!IMPORTANT] Instructions for creating a Discord bot and retrieving its token can be found here.
[!TIP] The
DISCORD_GUILD_IDenv variable is optional.When provided, it sets a default Discord server ID so any tool that accepts a
guildIdparameter can omit it.
docker run -d -i \
--name discord-mcp \
--restart unless-stopped \
-p 8085:8085 \
-e SPRING_PROFILES_ACTIVE \
-e DISCORD_TOKEN \
-e DISCORD_GUILD_ID \
saseq/discord-mcp:latestDefault MCP endpoint URL (HTTP profile): http://localhost:8085/mcp
git clone https://github.com/SaseQ/discord-mcpcd discord-mcpcat > .env <<EOF
SPRING_PROFILES_ACTIVE=http
DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN>
DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID>
EOFdocker compose up -d --builddocker ps --filter name=discord-mcp
curl -fsS http://localhost:8085/actuator/health[!TIP] You do not need to set
LOGGING_PATTERN_CONSOLEmanually. Logging is configured automatically for bothhttpand legacystdiomodes.
Default MCP endpoint URL (HTTP profile): http://localhost:8085/mcp
Health endpoint (Actuator): http://localhost:8085/actuator/health
git clone https://github.com/SaseQ/discord-mcpNOTE: Maven installation is required to use the mvn command. Full instructions can be found here.
cd discord-mcp
mvn clean package # The jar file will be available in the /target directoryRun the JAR as a long-running server:
DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN> \
DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID> \
SPRING_PROFILES_ACTIVE=http \
java -jar /absolute/path/to/discord-mcp-1.0.0.jarNOTE: The
DISCORD_GUILD_IDenvironment variable is optional. When provided, it sets a default Discord server ID so any tool that accepts aguildIdparameter can omit it.
Default MCP endpoint URL (HTTP profile): http://localhost:8085/mcp
Recommended (HTTP singleton mode):
{
"mcpServers": {
"discord-mcp": {
"url": "http://localhost:8085/mcp"
}
}
}Legacy mode (stdio, starts a new process/container per client session):
{
"mcpServers": {
"discord-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN>",
"-e",
"DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID>",
"saseq/discord-mcp:latest"
]
}
}
}Recommended (HTTP singleton mode):
claude mcp add discord-mcp --transport http http://localhost:8085/mcpLegacy mode (stdio, starts a new process/container per client session):
claude mcp add discord-mcp -- docker run --rm -i -e DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN> -e DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID> saseq/discord-mcp:latestcodex mcp add discord-mcp --url http://localhost:8085/mcp
codex mcp listRun this command:
openclaw mcp set discord-mcp '{"url":"http://localhost:8085/mcp","transport":"streamable-http"}'
openclaw mcp listOR
Pasting the following configuration into your OpenClaw ~/.openclaw/config.json file:
{
"mcp": {
"servers": {
"discord-mcp": {
"url": "http://localhost:8085/mcp",
"transport": "streamable-http"
}
}
}
}Go to: Settings -> Cursor Settings -> MCP -> Add new global MCP server
Pasting the following configuration into your Cursor ~/.cursor/mcp.json file is the recommended approach. You may also install in a specific project by creating .cursor/mcp.json in your project folder. See Cursor MCP docs for more info.
{
"mcpServers": {
"discord-mcp": {
"url": "http://localhost:8085/mcp"
}
}
}http://localhost:8085/mcpdiscord-mcp inside your workflow.localhost may point to the n8n container itself, not your host machine.http://discord-mcp:8085/mcpSTDIO local config (Default, legacy):
Past the following configuration into your Claude Desktop
claude_desktop_config.jsonfile.
{
"mcpServers": {
"discord-mcp": {
"command": "docker",
"args": [
"run",
"--rm",
"-i",
"-e",
"DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN>",
"-e",
"DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID>",
"saseq/discord-mcp:latest"
]
}
}
}Remote MCP Connector:
Settings -> Connectors.https://<PUBLIC_HOST>/mcp).Claude Desktop remote connectors are managed via Connectors UI (not
claude_desktop_config.json).http://localhost:8085/mcpis reachable only from your machine. For Claude Desktop remote connectors, expose the endpoint with public HTTPS (for example tunnel/reverse proxy).
get_server_info: Get detailed discord server informationget_user_id_by_name: Get a Discord user's ID by username in a guild for ping usage <@id>send_private_message: Send a private message to a specific useredit_private_message: Edit a private message from a specific userdelete_private_message: Delete a private message from a specific userread_private_messages: Read private message history from a specific user (includes attachment metadata, supports count 1-100 and optional cursor: before or after or around)send_message: Send a message to a specific channeledit_message: Edit a message from a specific channeldelete_message: Delete a message from a specific channelread_messages: Read message history from a specific channel (includes attachment metadata, supports count 1-100 and optional cursor: before or after or around)add_reaction: Add a reaction (emoji) to a specific messageremove_reaction: Remove a specified reaction (emoji) from a messagecreate_text_channel: Create a new text channeledit_text_channel: Edit settings of a text channel (name, topic, nsfw, slowmode, category, position)delete_channel: Delete a channelfind_channel: Find a channel type and ID using name and server IDlist_channels: List of all channelsget_channel_info: Get detailed information about a channelmove_channel: Move a channel to another category and/or change its positioncreate_category: Create a new category for channelsedit_category: Edit a category (rename or move position)delete_category: Delete a categoryfind_category: Find a category ID using name and server IDlist_channels_in_category: List of channels in a specific categorycreate_webhook: Create a new webhook on a specific channeldelete_webhook: Delete a webhooklist_webhooks: List of webhooks on a specific channelsend_webhook_message: Send a message via webhooklist_roles: Get a list of all roles on the server with their detailscreate_role: Create a new role on the serveredit_role: Modify an existing role's settingsdelete_role: Permanently delete a role from the serverassign_role: Assign a role to a userremove_role: Remove a role from a userkick_member: Kicks a member from the serverban_member: Bans a user from the serverunban_member: Removes a ban from a usertimeout_member: Disables communication for a member for a specified durationremove_timeout: Removes a timeout (unmute) from a member before it expiresset_nickname: Changes a member's nickname on the serverget_bans: Returns a list of banned users on the server with ban reasonscreate_voice_channel: Create a new voice channel in a guildcreate_stage_channel: Create a new stage channel for audio eventsedit_voice_channel: Edit settings of a voice or stage channel (name, bitrate, user limit, region)move_member: Move a member to another voice channeldisconnect_member: Disconnect a member from their current voice channelmodify_voice_state: Server mute or deafen a member in voice channelscreate_guild_scheduled_event: Schedule a new event on the server (voice, stage, or external)edit_guild_scheduled_event: Modify event details or change its status (start, complete, cancel)delete_guild_scheduled_event: Permanently delete a scheduled eventlist_guild_scheduled_events: List all active and scheduled events on the serverget_guild_scheduled_event_users: Get list of users interested in a scheduled eventlist_channel_permission_overwrites: List all permission overwrites for a channel with role/member breakdownupsert_role_channel_permissions: Create or update permission overwrite for a role on a channelupsert_member_channel_permissions: Create or update permission overwrite for a member on a channeldelete_channel_permission_overwrite: Delete a permission overwrite for a role or member from a channelcreate_invite: Create a new invite link for a specific channellist_invites: List all active invites on the server with their statisticsdelete_invite: Delete (revoke) an invite so the link stops workingget_invite_details: Get details about a specific invite (works for any public invite)create_forum_channel: Create a new forum channeledit_forum_channel: Edit settings of a forum channel (name, topic, nsfw, slowmode, category, position, default sort, default layout)list_forum_channels: List all forum channels in the serverget_forum_channel_info: Get detailed information about a forum channel including tags and settingslist_forum_tags: List all available tags in a forum channelcreate_forum_post: Create a new forum post (thread) with an initial message in a forum channellist_forum_posts: List active posts (threads) in a forum channelmodify_forum_post: Modify a forum post: lock/unlock, archive/unarchive, pin/unpin, or change applied tagslist_emojis: List all custom emojis on the serverget_emoji_details: Get detailed information about a specific custom emojicreate_emoji: Upload a new custom emoji to the server (base64 or image URL, max 256KB)edit_emoji: Edit an existing emoji's name or role restrictionsdelete_emoji: Permanently delete a custom emoji from the serverIf
DISCORD_GUILD_IDis set, theguildIdparameter becomes optional for all tools above.
A more detailed examples can be found in the Wiki.
Pick your client and paste the snippet. Each one is the same server, written the way that client expects it.
claude mcp add discord-mcp --transport http http://localhost:8085/mcp{
"mcpServers": {
"discord-mcp": {
"url": "http://localhost:8085/mcp"
}
}
}code --add-mcp '{"name":"discord-mcp","url":"http://localhost:8085/mcp"}'Runs as a hosted service. Your client connects over the network and nothing is installed locally.
Paste this prompt into your agent. It reads this page and does the setup for you.
Read https://aiagentslisting.com/mcp/discord-mcp-server to learn what the "Discord MCP Server" MCP server does and how to install it. Add it to my coding agent's MCP configuration as documented on that page, then confirm the server connects and list the tools it exposes.Agents can also browse this directory over MCP at https://aiagentslisting.com/api/mcp
docker run -d -iclaude mcp add discord-mcp --transport http http://localhost:8085/mcp
claude mcp add discord-mcp -- docker run --rm -i -e DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN> -e DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID> saseq/discord-mcp:latestThis server doesn't publish a machine-readable tool manifest, and it doesn't expose a public endpoint we could ask. Connect the server locally to see what it exposes.
Maintain this server? Claiming proves you own the listing and earns the last 4 points.
Claim this listingPaste this line near the top of your repository's README. The badge always renders the current score.
[](https://aiagentslisting.com/mcp/discord-mcp-server)The most powerful MCP Slack Server with no permission requirements, Apps support, GovSlack, DMs, Gro
Telegram MCP for managing dialogs, messages, drafts, read statuses, and more.
MCP server that integrates the LINE Messaging API to connect an AI Agent to the LINE Official Accoun
v1.0.0discord-mcp v1.0.0Release notesConnect to the AI Agents Listing MCP server at https://aiagentslisting.com/api/mcp using the HTTP transport and complete the sign-in when it asks. Then call the submit_review tool for the listing "discord-mcp-server" with a rating from 1 to 5 and a short note on what worked and what did not.No reviews yet
Be the first to share your experience with this tool.
The most powerful MCP Slack Server with no permission requirements, Apps support, GovSlack, DMs, Gro
Communication
Telegram MCP for managing dialogs, messages, drafts, read statuses, and more.
Communication
MCP server that integrates the LINE Messaging API to connect an AI Agent to the LINE Official Accoun
Communication
One email a week. New agents, MCP servers and skills, and what is actually getting traction.