MCP Discord
mcp-discord
Der vollständigste Open-Source-MCP-Server für Discord.
Gib jedem MCP-Client (Claude, Cursor, benutzerdefinierte Agenten) die volle Kontrolle über Discord — Nachrichten, Moderation, Kanäle, Rollen und mehr. Entstanden aus dem produktiven Einsatz bei delfus.app und für die Community als Open Source veröffentlicht.
Warum mcp-discord?
Über 30 Tools in 8 Kategorien — Server, Kanäle, Nachrichten, Reaktionen, Mitglieder, Rollen, Moderation und Überwachung
Dual-Modus — eigenständig ausführen (eigener Prozess) oder als Plugin in deinen bestehenden discord.js-Bot integrieren
Nur REST oder Gateway — wähle zwischen dem leichtgewichtigen Nur-REST-Modus oder dem vollständigen WebSocket-Gateway für Echtzeitfunktionen
Zwei Transporte — stdio (Standard, für Claude Desktop / Claude Code) oder HTTP mit Bearer-Token-Authentifizierung
Produktionserprobt — entwickelt und im Einsatz bei delfus.app
Schnellstart
Voraussetzungen
Node.js 18 oder höher
Installation
# Clone the repository
git clone https://github.com/goul4rt/mcp-discord.git
cd mcp-discord
# Install dependencies
npm install
# Build
npm run buildKonfiguration
cp .env.example .envBearbeite .env und füge dein Discord-Bot-Token hinzu:
DISCORD_TOKEN=your-bot-token-hereAusführen
# stdio transport (default — for MCP clients like Claude)
npm start
# HTTP transport (for remote/web clients)
npm run start:httpMCP-Client-Konfiguration
Claude Desktop / Claude Code
Füge dies zu deiner MCP-Konfigurationsdatei hinzu:
{
"mcpServers": {
"discord": {
"command": "node",
"args": ["dist/standalone.js"],
"cwd": "/path/to/mcp-discord",
"env": {
"DISCORD_TOKEN": "your-bot-token-here"
}
}
}
}Mit Gateway (Echtzeitfunktionen)
{
"mcpServers": {
"discord": {
"command": "node",
"args": ["dist/standalone.js"],
"cwd": "/path/to/mcp-discord",
"env": {
"DISCORD_TOKEN": "your-bot-token-here",
"DISCORD_USE_GATEWAY": "true"
}
}
}
}Tools
Server / Gilde (2 Tools)
Tool | Beschreibung |
| Listet alle Discord-Server auf, auf die der Bot Zugriff hat |
| Ruft detaillierte Informationen zu einem bestimmten Server ab |
Kanäle (7 Tools)
Tool | Beschreibung |
| Listet alle Kanäle in einem Server auf |
| Ruft detaillierte Informationen zu einem Kanal ab |
| Erstellt Text-, Sprach-, Kategorie-, Ankündigungs-, Foren- oder Stage-Kanäle |
| Bearbeitet Kanalname, Thema, NSFW, Slowmode, Position, Kategorie |
| Löscht einen Kanal dauerhaft |
| Erstellt einen Thread in einem Kanal (optional aus einer Nachricht) |
| Archiviert einen Thread |
Nachrichten (8 Tools)
Tool | Beschreibung |
| Sendet Nachrichten mit Text, Rich Embeds und Antworten |
| Liest aktuelle Nachrichten mit Paginierung (bis zu 100) |
| Sucht Nachrichten nach Inhalt, Autor oder Kanal |
| Bearbeitet eine Bot-Nachricht |
| Löscht eine einzelne Nachricht |
| Löscht 2-100 Nachrichten in großen Mengen (jünger als 14 Tage) |
| Pinnt eine Nachricht an |
| Entfernt eine angepinnte Nachricht |
Reaktionen (2 Tools)
Tool | Beschreibung |
| Fügt eine Emoji-Reaktion hinzu (Unicode oder benutzerdefiniert) |
| Entfernt eine Reaktion |
Mitglieder / Benutzer (4 Tools)
Tool | Beschreibung |
| Listet Servermitglieder mit Paginierung auf |
| Ruft detaillierte Mitgliederinformationen ab (Rollen, Spitzname, Beitrittsdatum) |
| Ruft Informationen über jeden Discord-Benutzer per ID ab |
| Sucht Mitglieder nach Benutzername oder Spitzname |
Rollen (4 Tools)
Tool | Beschreibung |
| Listet alle Rollen mit Berechtigungen, Farben und Mitgliederzahlen auf |
| Erstellt eine neue Rolle |
| Fügt einem Mitglied eine Rolle hinzu |
| Entfernt eine Rolle von einem Mitglied |
Moderation (4 Tools)
Tool | Beschreibung |
| Stellt einen Benutzer vorübergehend stumm (bis zu 28 Tage) |
| Kickt einen Benutzer vom Server |
| Bannt einen Benutzer mit optionaler Nachrichtenlöschung |
| Hebt den Bann eines Benutzers auf |
Überwachung (2 Tools)
Tool | Beschreibung |
| Zeigt das Server-Audit-Log an (Banns, Kicks, Änderungen) |
| Findet aktuelle @Erwähnungen des Bots oder eines Benutzers |
Architektur
┌─────────────────────────────────────────────────┐
│ MCP Client │
│ (Claude, Cursor, custom) │
└──────────────────┬──────────────────────────────┘
│ stdio or HTTP
┌──────────────────▼──────────────────────────────┐
│ MCP Server │
│ (transport + tool routing) │
└──────────────────┬──────────────────────────────┘
│
┌──────────────────▼──────────────────────────────┐
│ Tool Registry │
│ (30 tools, Zod validation) │
└──────────────────┬──────────────────────────────┘
│
┌──────────────────▼──────────────────────────────┐
│ DiscordProvider (interface) │
├─────────────────────┬───────────────────────────┤
│ StandaloneProvider │ IntegratedProvider │
│ (own token + REST/ │ (uses host bot's │
│ optional gateway) │ existing connection) │
└─────────────────────┴───────────────────────────┘
│
┌──────────────────▼──────────────────────────────┐
│ Discord API │
└─────────────────────────────────────────────────┘Provider-Abstraktion: MCP-Tools greifen niemals direkt auf discord.js zu. Sie rufen das DiscordProvider-Interface auf, das zwei Implementierungen hat:
StandaloneProvider — erstellt eine eigene Verbindung unter Verwendung eines Bot-Tokens. REST-fokussiert mit optionalem Gateway. Verwenden, wenn als separater Prozess ausgeführt.
IntegratedProvider — empfängt einen bestehenden discord.js
Clientvom Host-Bot. Kein zusätzlicher Overhead, geteilter Cache und Gateway. Verwenden, wenn in einen bestehenden Bot eingebettet.
Integrationsanleitung
Um mcp-discord als Plugin in deinem bestehenden discord.js-Bot zu verwenden:
import { IntegratedProvider, createMcpServer } from 'mcp-discord';
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
// Your existing discord.js client
const provider = new IntegratedProvider({ client: myDiscordClient });
await provider.connect();
const server = createMcpServer({ provider });
const transport = new StdioServerTransport();
await server.connect(transport);Der IntegratedProvider nutzt die bestehende Gateway-Verbindung deines Bots — kein zusätzliches WebSocket, keine zusätzliche Authentifizierung, kein zusätzlicher Speicherverbrauch.
Konfigurationsreferenz
Variable | Erforderlich | Standard | Beschreibung |
| Ja | — | Discord-Bot-Token |
| Nein |
| Verbindet mit dem Discord-WebSocket-Gateway für Echtzeitfunktionen |
| Nein |
| Transportmodus: |
| Nein |
| HTTP-Server-Port (nur wenn |
| Nein | — | Bearer-Token für die HTTP-Transport-Authentifizierung |
Mitwirken
Beiträge sind willkommen! Siehe CONTRIBUTING.md für die Entwicklungseinrichtung, den Code-Stil und wie man neue Tools hinzufügt.
Lizenz
Autor
Erstellt von @goul4rt. Entstanden aus delfus.app und für die Community als Open Source veröffentlicht.
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/goul4rt/mcp-discord'
If you have feedback or need assistance with the MCP directory API, please join our Discord server