loading…
Search for a command to run...
loading…
A MCP server for the Discord integration. Enable your AI assistants to seamlessly interact with Discord. Enhance your Discord experience with powerful automatio
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:latest
Default MCP endpoint URL (HTTP profile): http://localhost:8085/mcp
git clone https://github.com/SaseQ/discord-mcp
cd discord-mcp
cat > .env <<EOF
SPRING_PROFILES_ACTIVE=http
DISCORD_TOKEN=<YOUR_DISCORD_BOT_TOKEN>
DISCORD_GUILD_ID=<OPTIONAL_DEFAULT_SERVER_ID>
EOF
docker compose up -d --build
docker 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-mcp
NOTE: 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 directory
Run 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.jar
NOTE: 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/mcp
Legacy 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:latest
codex mcp add discord-mcp --url http://localhost:8085/mcp
codex mcp list
Run this command:
openclaw mcp set discord-mcp '{"url":"http://localhost:8085/mcp","transport":"streamable-http"}'
openclaw mcp list
OR
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).
<@id>count 1-100 and optional cursor: before or after or around)count 1-100 and optional cursor: before or after or around)If
DISCORD_GUILD_IDis set, theguildIdparameter becomes optional for all tools above.
A more detailed examples can be found in the Wiki.
Add this to claude_desktop_config.json and restart Claude Desktop.
{
"mcpServers": {
"saseq-discord-mcp": {
"command": "npx",
"args": []
}
}
}