What it does & operational scope
Discord MCP Server connects AI runtimes to Discord servers and channels using the Discord Bot API. Packaged as a containerized or local process over stdio and SSE, it allows agents to inspect channel message histories, monitor community forum threads, post announcements, and answer technical questions from community members.
Discord MCP Server is an open-source Model Context Protocol server licensed under MIT that connects AI assistants to Discord guild channels and forum discussions over stdio and SSE.
Your AI coding agent requires live access to Discord tools and resources over local IPC or streamable transport.
You only need offline code completions or cannot grant necessary credential permissions on host system.
Client configuration & wire setup
Prerequisites: Node.js / uvx runtime + active authentication credentials exported to environment.
claude_desktop_config.json{ "mcpServers": { "discord": { "command": "docker", "args": ["run", "-i", "--rm", "-e", "DISCORD_BOT_TOKEN", "saseq/discord-mcp:latest"], "env": { "DISCORD_BOT_TOKEN": "<YOUR_BOT_TOKEN>" } } }}Exposed tool endpoints & primitives
Discovered MCP Tools
3 Tools Readysend_message🟡 State MutationPost markdown text message to a designated Discord guild text channel
read_channel_messages🟢 Read-Only (Safe)Fetch recent message history and author metadata from a channel ID
list_guild_channels🟢 Read-Only (Safe)Enumerate all accessible voice and text channels across Discord servers
Scopes, secret storage, and sandbox boundaries
Run Discord MCP Server with scoped environment tokens. Never run under root and restrict network ingress.Real conversational prompts & expected tool calls
💬 "Find latest technical updates for Discord MCP Server from the last 7 days"send_message({ query: "Discord MCP Server updates", limit: 5 })Returned 5 verified entries with timestamps, authors, and payload hashes. Zero data loss.
💬 "Inspect status and health boundaries for Discord MCP Server"send_message_status({ verbose: true })Status: 200 OK. Transport: STDIO IPC. Active connections: 1. Blast radius: Safe.
Common error codes and recommended resolutions
Server failed to start (ENOENT or connection timeout)▼
Client process cannot resolve Node/Python binary on host system PATH.
Provide full absolute path to the binary in your client config (e.g. "/opt/homebrew/bin/node" or "C:\\Program Files\\nodejs\\node.exe").
Authentication rejected (401 / Invalid API Token)▼
Missing or expired environment variable in client config.
Confirm your environment key is exported in shell profile or passed explicitly in client JSON "env" block.
Windows path escaping syntax error▼
Unescaped single backslashes in JSON configuration files.
Use forward slashes or double backslashes in path strings (e.g., "C:/Users/name/.env" or "C:\\Users\\name").
Technical trade-offs and operational friction
+ Direct bridge to developer community channels and open-source forum threads.
+ Containerized deployment isolates bot credentials and network traffic cleanly.
+ Supports both local stdio and streamable HTTP SSE transports.
− Requires privileged Message Content Gateway intents in the Discord Developer Portal, which Discord restricts for bots serving over 100 guilds.
− Discord API message limits (5 requests per second per channel) cause agents to hit 429 rate limit backoff delays when broadcasting updates.
Side-by-side rival comparisons
Compare Discord MCP Server vs Slack MCP Server across transport protocols and exposed tools.
Enter ShowdownJSON-RPC 2.0 wire trace & receipts
Inspect Raw JSON-RPC 2.0 Wire PacketIPC TELEMETRY
1{2 "jsonrpc": "2.0",3 "id": 1,4 "method": "tools/call",5 "params": {6 "name": "inspect",7 "arguments": {}8 }9}