get_serversLABSCO SUMMARY
Discord read and write without registering a bot.
It drives the web client as you, which is what makes it work in servers where you could never install a bot — communities you joined rather than ones you run. Reading a day's discussion across your servers and summarizing it is the shape it fits.
What it is
A Discord server that works through the web client rather than the Discord API. It signs in with your account credentials in a Playwright browser, so it reaches any server you can already see as a user — no bot, no bot permissions, no API token.
What you get
- The Discord servers your account has access to
- The channels inside a given server
- Recent messages, newest first, with an optional hours-back window
- Messages sent to a channel, split automatically when they run long
Requirements
Python 3.10+ with the uv package manager, and a Discord account whose email and password go into DISCORD_EMAIL and DISCORD_PASSWORD. Playwright's browser is installed once with uv run playwright install, and DISCORD_HEADLESS controls whether that browser is visible.
Setup effort
One command plus credentials — claude mcp add discord-mcp -s user -e DISCORD_EMAIL=<YOUR_DISCORD_EMAIL> -e DISCORD_PASSWORD=<YOUR_DISCORD_PASSWORD> -e DISCORD_HEADLESS=true -- uvx --from git+https://github.com/elyxlz/discord-mcp.git discord-mcp
USE CASES
Catching up on a community you follow
List your servers, pick the channel, and pull the last stretch of messages using the hours-back window.
Answering in a channel without leaving your editor
Post the reply from the conversation where you drafted it; long messages are split automatically to fit.
Finding the right channel in a busy server
List a server's channels by ID rather than scrolling the sidebar.
Producing a digest across several servers
Walk the server list and read recent messages from each, so one request covers the whole morning's catch-up.
4 tools
Listed in project docs. Your client may show a different list.
get_channelsread_messagessend_messageBEFORE YOU INSTALL
What to know first
Tools you get
4 tools named in the project's documentation.
Requires
- uvx on PATH
- Python 3.10+
- DISCORD_PASSWORD in your environment
- DISCORD_EMAIL in your environment
Where it runs
Both documented clients run the server on your machine.
INSTALLATION
Connect your client
Server setup
Setup
git clone https://github.com/elyxlz/discord-mcp.git
cd discord-mcp
uv sync
uv run playwright install
uv run python main.pyclaude mcp add
Claude Code
claude mcp add discord-mcp -s user -e DISCORD_EMAIL=<YOUR_DISCORD_EMAIL> -e DISCORD_PASSWORD=<YOUR_DISCORD_PASSWORD> -e DISCORD_HEADLESS=true -- uvx --from git+https://github.com/elyxlz/discord-mcp.git discord-mcpMCP Clients
Claude Desktop
{
"mcpServers": {
"discord": {
"command": "uvx",
"args": [
"--from",
"git+https://github.com/elyxlz/discord-mcp.git",
"discord-mcp"
],
"env": {
"DISCORD_EMAIL": "<YOUR_DISCORD_EMAIL>",
"DISCORD_PASSWORD": "<YOUR_DISCORD_PASSWORD>",
"DISCORD_HEADLESS": "true"
}
}
}
}