discord-mcp
discord-mcp
Lesen und bedienen Sie Discord über Ihren eigenen laufenden Desktop-Client: Kanalnachrichten, Direktnachrichten, Gruppenchats, Threads, Forumsbeiträge und Suche.
So funktioniert es
Discords Desktop-App ist Electron. Mit --remote-debugging-port gestartet, ist ihr Renderer über das Chrome DevTools Protocol erreichbar. discord-mcp hängt sich an diesen Renderer an, beobachtet den Header, den der Client bei seinen eigenen API-Aufrufen bereits mitsendet, und sendet Anfragen von innerhalb derselben Seite aus.
Jede Anfrage stammt daher aus dem echten Client-Prozess, in der echten Sitzung, mit dem echten Fingerabdruck. Es gibt keinen zweiten Client zu erkennen, und das Token wird nie aus Discords Speicher gelesen: Es wird ausschließlich bei einer Anfrage beobachtet, die der Client ohnehin schon stellt.
Related MCP server: discord-user-mcp
Lesen Sie dies, bevor Sie es verwenden
Dies verstößt gegen die Nutzungsbedingungen von Discord. Die Automatisierung eines Benutzerkontos ist unabhängig davon verboten, wie die Sitzung erlangt wurde, und Abschnitt 11 verbietet zusätzlich das Modifizieren des Clients.
Das praktische Risiko liegt in derselben Kategorie wie Client-Mods wie Vencord, die Discord öffentlich als weniger prioritär eingestuft hat und für die es bis 2026 keine bestätigten Sperren gibt. Das ist ein Muster der Nichtdurchsetzung, kein Versprechen. Das Risiko konzentriert sich auf das Schreiben, nicht auf das Lesen.
Ein Bot-Token wäre vollständig konform, aber ein Bot kann niemals Ihre Direktnachrichten lesen. Diese Einschränkung ist der eigentliche Grund, warum dieses Projekt existiert.
Einrichtung
npm install
npm run buildDiscord verwendet eine Single-Instance-Sperre, daher wirkt das Debugging-Flag nur beim Start. Beenden Sie zuerst einen eventuell laufenden Client.
node dist/cli/main.js launch # starts Discord on a random loopback port
node dist/cli/main.js doctor # verifies attach, capture and a real readdoctor sollte Ihr Konto, die Anzahl der Guilds und die Anzahl der Direktnachrichten ausgeben.
Der erste Attach lädt den Renderer einmal neu, da ein untätiger Client keine REST-Anfragen stellt, von denen Header abzulesen wären. Die Erfassung wird dann pro Port für zwölf Stunden in ~/.local/state/discord-mcp/headers.json gespeichert, sodass spätere Läufe in etwa einer Sekunde andocken und Ihren Client in Ruhe lassen.
Anbindung an einen MCP-Client
{
"mcpServers": {
"discord": {
"command": "node",
"args": ["/path/to/discord-mcp/dist/cli/main.js", "serve"]
}
}
}Werkzeuge
Standardmäßig sind achtzehn Werkzeuge verfügbar: zwölf lesende und sechs schreibende.
Werkzeug | Stufe | Zweck |
| Lesen | Guilds, zu denen dieses Konto gehört |
| Lesen | Kanäle eines Guilds |
| Lesen | Rollen, die in einem Guild definiert sind |
| Lesen | Beschreibt einen Kanal oder Thread |
| Lesen | Angeheftete Nachrichten |
| Lesen | Eine Nachricht anhand der ID |
| Lesen | Direkt- und Gruppenunterhaltungen |
| Lesen | Offene Threads eines Kanals; so werden Forumsbeiträge gelesen |
| Lesen | Archivierte Threads, in denen ruhige Forumsbeiträge landen |
| Lesen | Einen Guild durchsuchen |
| Lesen | Einen Kanal oder eine Unterhaltung durchsuchen |
| Schreiben | Sendet eine Nachricht oder Antwort |
| Schreiben | Bearbeitet eine Nachricht, die dieses Konto gesendet hat |
| Schreiben | Fügt eine Reaktion hinzu |
| Schreiben | Markiert einen Kanal bis zu einer Nachricht als gelesen |
| Schreiben | Startet einen Thread, optional aus einer vorhandenen Nachricht |
| Schreiben | Erstellt einen Forumsbeitrag mit seiner Eröffnungsnachricht |
Das Lesen eines Forums erfolgt durch Auflisten der Threads eines Forum-Kanals. Jeder Beitrag wird zusammen mit der Nachricht, die ihn eröffnet hat, und seinen angewendeten Tags zurückgegeben, sodass ein Beitrag ohne einen zweiten Aufruf lesbar ist.
Destruktive Werkzeuge
Sieben weitere Operationen existieren und sind überhaupt nicht registriert, es sei denn, ihre Kategorie ist aktiviert. Sie erscheinen nicht in der Werkzeugliste, sodass kein Host und kein Modell sie erreichen kann.
Werkzeug | Kategorie |
|
|
|
|
|
|
|
|
|
|
|
|
Aktivieren Sie nur, was Sie benötigen:
{ "destructive": ["messages", "threads"] }node dist/cli/main.js serve --config /path/to/policy.jsonDies ist die tragende Kontrolle. Host-Genehmigungsabfragen sind eine zweite Ebene, da sich das Verhalten der Hosts unterscheidet und einige Hosts automatisch genehmigen. Jedes destruktive Werkzeug ermittelt das Ziel und gibt zurück, worauf es eingewirkt hat; das Ergebnis benennt den Kanal, statt nur eine Snowflake zu wiederholen.
Sicherheit
Ein offener DevTools-Port ist eine lokale Authentifizierungsumgehung: Jeder Prozess, der unter Ihrer Benutzerkennung läuft, kann die Sitzung steuern, selbst wenn eine Zwei-Faktor-Authentifizierung aktiv ist. discord-mcp bindet nur an Loopback und wählt einen zufälligen hohen Port statt des Standardports 9222. Lassen Sie den Client nicht mit geöffnetem Port laufen, wenn Sie ihn nicht verwenden.
Der Header-Cache enthält ein aktives Token. Eine Erfassung wiederzuverwenden bedeutet, sie zu behalten; daher enthält ~/.local/state/discord-mcp/headers.json Ihren Authorization-Header, bis er abläuft. Die Datei wird nur für den Besitzer geschrieben, Modus 0600, ebenso wie der danebenliegende Startzustand. Löschen Sie die Datei, um eine neue Erfassung zu erzwingen:
rm ~/.local/state/discord-mcp/headers.jsonStarten Sie das Programm ohne Cache-Pfad, wenn Sie lieber jedes Mal neu erfassen und das Token nie speichern möchten, auf Kosten eines Renderer-Neuladens bei jedem Attach.
Aufbau
src/attach/ CDP connection, target selection, launch, state
src/bridge/ header capture, request execution, rate limiting
src/api/ typed wrappers over Discord REST v9
src/normalize/ reduce Discord's wire format to what a reader needs
src/policy/ operation tiers and the destructive gate
src/tools/ MCP tool registration
src/cli/ launch, doctor, serveAbhängigkeiten verlaufen nur nach unten. normalize/ und policy/ sind rein und haben keinerlei Abhängigkeiten; dort befindet sich der Großteil der Testsuite.
npm test # 152 tests, no Discord required
npm run typecheckDas Designdokument, einschließlich der Erkenntnisse aus Spike 0, die die Brücke geprägt haben, befindet sich in docs/superpowers/specs/.
This server cannot be installed
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
- AlicenseBqualityFmaintenanceEnables interaction with Discord channels through a bot, allowing users to send messages and files, retrieve messages with advanced filtering, and download attachments of any type.5264MIT
- AlicenseNot gradedqualityDmaintenanceEnables 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.6MIT
- FlicenseNot gradedqualityBmaintenanceEnables interaction with Discord through natural language, including reading and sending messages, managing servers, and user actions.
- AlicenseNot gradedqualityDmaintenanceEnables reading Discord messages and server information using your own account via OAuth2, no bot required.MIT
Related MCP Connectors
Browser MCP for logged-in tasks. Uses your Chrome — credentials stay local. Zero-token replay.
Eyes and hands on real Windows PCs — observe, click, type via Glasswarp API.
Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.
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/fmarcac/discord-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server