discord-user-mcp
Enables interaction with Discord using personal user tokens instead of bot applications, allowing for seamless message management and server exploration. It provides tools for reading history, sending messages, and searching across channels and DMs directly through MCP-compatible clients.
README
discord-user-mcp
Discord MCP server using user tokens. No bot setup, no Developer Portal, no intents — just your token and go.
Built for Claude Code and any MCP-compatible client.
Why user tokens?
Every other Discord MCP server requires creating a bot application, configuring intents, and inviting the bot to your server. This one uses your existing Discord session — the same access you already have in the app.
Trade-off: Using user tokens for automation is against Discord's ToS. This is a personal tool for your own account on your own machine. Use responsibly.
Setup
1. Get your Discord token
Your token is stored encrypted in the Discord app's local storage. You can find it by:
- Opening Discord in a browser → DevTools → Network tab → any request →
Authorizationheader - Or extracting it from the desktop app's LevelDB storage (macOS:
~/Library/Application Support/discord/Local Storage/leveldb/)
2. Add to Claude Code
claude mcp add discord -e DISCORD_TOKEN=your-token-here -- node /path/to/discord-user-mcp/dist/index.js
With a default server:
claude mcp add discord \
-e DISCORD_TOKEN=your-token-here \
-e DISCORD_DEFAULT_GUILD=your-server-id \
-- node /path/to/discord-user-mcp/dist/index.js
3. Build from source
git clone https://github.com/olivier-motium/discord-user-mcp.git
cd discord-user-mcp
npm install
npm run build
Tools (14)
Core
| Tool | Description |
|---|---|
discord_list_guilds |
List servers you're in |
discord_list_channels |
List channels grouped by category |
discord_read_messages |
Read channel history with pagination |
discord_send_message |
Send a message, optionally as a reply |
discord_search |
Search messages by content, author, channel, date, attachment type |
Essential
| Tool | Description |
|---|---|
discord_list_dms |
List DM conversations |
discord_send_dm |
Send a DM (by user ID or channel ID) |
discord_react |
Add emoji reaction to a message |
discord_pinned_messages |
Get pinned messages from a channel |
discord_list_threads |
List active threads in a server |
discord_guild_info |
Server details, roles, features |
Additional
| Tool | Description |
|---|---|
discord_edit_message |
Edit your own message |
discord_delete_message |
Delete your own message |
discord_user_info |
User profile with server roles |
Configuration
| Environment Variable | Required | Description |
|---|---|---|
DISCORD_TOKEN |
Yes | Your Discord user token |
DISCORD_DEFAULT_GUILD |
No | Default server ID — tools that need a guild will use this when not specified |
Design choices
- Plain text output — no raw JSON. Messages formatted as
[2024-01-15 14:32] alice: content. IDs always inline for tool chaining. - No discord.js — raw
fetchagainst Discord API v10. Zero runtime deps beyond MCP SDK. - Rate limit handling — automatic retry with
retry_after+ jitter, up to 3 attempts. - Search is the star — accepts usernames (resolved to IDs internally), date strings (
YYYY-MM-DDconverted to snowflakes), and all Discord search filters. - Conservative defaults — 25 messages per read, not 100. Keeps output manageable for AI.
License
MIT
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.