Discord MCP Server
Provides tools for interacting with Discord, enabling read/write access to messages, threads, reactions, search, direct messages, and server/channel management via a user token.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Discord MCP ServerSend a message to #general saying hello"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
๐ค Discord MCP Server
Give Claude full access to Discord.
Read messages, send messages, manage threads, react, search history, send DMs โ all through natural conversation.
What is this?
Discord MCP Server is a Model Context Protocol server that bridges Claude and Discord. Once connected, you can talk to Claude in plain English and it will interact with your Discord account โ no scripting, no dashboards, no manual API calls.
Uses a Discord user token โ no bot registration needed.
Related MCP server: Discord MCP Server
Demo
You: "What are the last 15 messages in #general?"
You: "Send a message to #announcements: deployment done โ
"
You: "Search #support for messages about 'login error'"
You: "DM user 123456789 and say hey, got a minute?"
You: "Create a thread called 'Release notes' from that last message"
You: "What are my recent mentions across all servers?"
You: "React to message 987654321 with ๐"Tools
Tool | Description |
| Connected account info (username, ping, server count) |
| All Discord servers you're in |
| Server details: members, boosts, verification level, etc. |
| All channels in a server, sorted by position |
| Info about a specific channel |
| Fetch recent messages (up to 100), with pagination |
| Send a message, with optional reply |
| Send a rich embed (title, description, fields, color, footer) |
| Edit one of your own messages |
| Delete a message |
| Pin or unpin a message |
| React with a Unicode or custom emoji |
| Start a thread from a message or create a standalone one |
| List server members with roles (up to 1 000) |
| Full profile of a user in a server |
| Keyword search across recent channel history |
| All pinned messages in a channel |
| List your open DM conversations |
| Send a direct message to any user by ID |
| Recent messages that mention you across all servers |
Requirements
Node.js 18+
Your Discord user token
Setup
1. Get your Discord User Token
Open Discord in your browser at discord.com/app
Press
F12โ Network tabSend any message or switch a channel
Find any request to
discord.com/api, click it, look at Request HeadersCopy the value of the
Authorizationheader โ that's your token
Or paste this in the browser Console:
(webpackChunkdiscord_app.push([[''],{},e=>{m=[];for(let c in e.c)m.push(e.c[c])}]),m)
.find(m=>m?.exports?.default?.getToken!==void 0).exports.default.getToken()โ ๏ธ Your user token = your password. Never share it, commit it to git, or put it in public config files.
2. Install
git clone https://github.com/vovafes/discord-mcp-server.git
cd discord-mcp-server
npm install
npm run build3. Connect to Claude Desktop
Edit your Claude Desktop config:
macOS โ
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows โ
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"discord": {
"command": "node",
"args": ["/absolute/path/to/discord-mcp-server/dist/index.js"],
"env": {
"DISCORD_USER_TOKEN": "YOUR_TOKEN_HERE"
}
}
}
}Restart Claude Desktop โ the Discord tools will appear automatically.
4. Connect to Claude Code CLI
claude mcp add discord \
--env DISCORD_USER_TOKEN=YOUR_TOKEN_HERE \
-- node /absolute/path/to/discord-mcp-server/dist/index.jsConfiguration
Variable | Required | Default | Description |
| โ | โ | Your Discord user token |
| โ |
| Delay between REST calls in ms. Lower = faster, higher = safer. |
Rate-Limit Protection
Discord enforces strict limits on user tokens. Three layers of protection are built in:
Global throttle
Every REST call passes through a shared gate that enforces a minimum gap of REQUEST_DELAY_MS (default 5 seconds) between consecutive requests.
Exponential back-off
On a 429 Too Many Requests response, the server automatically retries:
attempt 1 โ wait 2s
attempt 2 โ wait 4s
attempt 3 โ wait 8s
attempt 4 โ wait 16s (then give up)Hard scan caps
Bulk tools that touch many channels are capped to prevent runaway API storms:
Tool | Limit |
| Max 500 messages (5 batches ร 100) |
| Max 20 channels scanned across all servers |
To tune the throttle:
"env": {
"DISCORD_USER_TOKEN": "...",
"REQUEST_DELAY_MS": "2000"
}Architecture
โโโโโโโโโโโโโโโโโโโโ
โ Claude / MCP โ
โ Client โ
โโโโโโโโโโคโโโโโโโโโโ
โ stdio (JSON-RPC)
โโโโโโโโโโผโโโโโโโโโโ
โ discord-mcp โ โ this server
โ (Node.js) โ
โโโโโโโโโโคโโโโโโโโโโ
โ discord.js (WebSocket + REST)
โโโโโโโโโโผโโโโโโโโโโ
โ Discord API โ
โโโโโโโโโโโโโโโโโโโโThe server speaks MCP over stdio โ no open ports, no HTTP server. The MCP host (Claude Desktop, Claude Code, etc.) spawns it as a subprocess.
Development
# Dev mode โ no build step needed
DISCORD_USER_TOKEN=your_token npm run dev
# Build
npm run build
# Run built output
DISCORD_USER_TOKEN=your_token npm startMade by Claude for Claude ๐ค
Built with discord.js ยท Model Context Protocol SDK
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Flicense-qualityBmaintenanceEnables interaction with Discord through natural language, including reading and sending messages, managing servers, and user actions.
- Alicense-qualityDmaintenanceEnables AI agents to interact with Discord through the REST API and real-time events, supporting message management, user info, channel operations, and more with security controls.251MIT
- Alicense-qualityDmaintenanceEnables Claude to manage Discord servers through the Discord API, supporting server info, messaging, channel management, webhooks, and user interactions.10MIT
- Alicense-qualityDmaintenanceEnables Claude Code to interact with Discord servers, including sending messages, reading channels, managing threads, and adding reactions via natural language commands.14MIT
Related MCP Connectors
WHOOP recovery, strain, sleep and workouts in Claude via official WHOOP OAuth. Free, open source.
Connect Claude to Fathom meeting recordings, transcripts, and summaries
Hosted MCP server connecting claude.ai, ChatGPT and other AI apps to your own computer
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/vovafes/discord-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server