Skip to main content
Glama

@devli13/mcp-discord

npm License: MIT

Ein MCP-Server für Discord. Sende Nachrichten, moderiere, verwalte Kanäle, inspiziere Server — von Claude Code, Paperclip-Agenten, Gemini CLI oder jedem MCP-kompatiblen Client aus.

Reiner REST-Wrapper. Kein Gateway. Keine Datenbank. Einfach Discords v10-API als 26 gut dokumentierte Tools, mit Ratenbegrenzung pro Route und strukturierten Fehlerergebnissen.


Warum

Discords API ist weitläufig und agentenunfreundlich, wenn sie über rohes curl aufgerufen wird. Agenten stoßen an Ratenbegrenzungen, behandeln 429er falsch, verpfuschen Audit-Log-Gründe, vergessen Paginierungs-Cursor. Dieses MCP behebt das ein für alle Mal, damit sich Agenten auf die Absicht konzentrieren können: „lösche diese Spam-Nachricht“, „poste die tägliche Zusammenfassung in #mod-log“, „setze @user für eine Stunde in den Timeout“.

Auch großartig für Menschen. Verbunden mit Claude Code kannst du sagen: „fasse die letzten 50 Nachrichten in meinem Discord #dev-Kanal zusammen“ und Claude erledigt das einfach.


Related MCP server: Discord Bridge MCP Server

Installation

npm install -g @devli13/mcp-discord

Oder via npx (keine Installation):

DISCORD_BOT_TOKEN=<your-token> npx -y @devli13/mcp-discord

Einrichtung

1. Erstelle einen Discord-Bot

  1. Gehe zu https://discord.com/developers/applicationsNew Application

  2. Füge der Anwendung einen Bot hinzu

  3. Kopiere das Bot-Token — dies ist dein DISCORD_BOT_TOKEN

  4. Lade den Bot mit dem OAuth2-URL-Generator (Scope: bot) in deinen Server ein. Wähle Berechtigungen basierend darauf, was das MCP tun soll (z. B. Nachrichten verwalten zum Löschen, Mitglieder moderieren für Timeouts)

2. Verbinde es mit deinem MCP-Client

Claude Code:

claude mcp add discord \
  --env DISCORD_BOT_TOKEN=<your-token> \
  -- npx -y @devli13/mcp-discord

Paperclip mcp-gateway (.mcp.json):

{
  "mcpServers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@devli13/mcp-discord"],
      "env": {
        "DISCORD_BOT_TOKEN": "<your-token>"
      }
    }
  }
}

Gemini CLI (~/.gemini/config.json):

{
  "mcpServers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@devli13/mcp-discord"]
    }
  }
}

3. (Optional) Aktiviere privilegierte Intents

Wenn du Servermitglieder auflisten (discord_list_members) oder dieses MCP zusammen mit dem Begleit-Plugin für eingehende Ereignisse verwenden möchtest, aktiviere Server Members Intent und Message Content Intent in den Einstellungen deines Bots im Entwicklerportal. Diese sind für die meisten MCP-Operationen nicht erforderlich — nur für bestimmte Endpunkte.


Tool-Referenz

Alle Tools haben das Präfix discord_* und geben entweder einen JSON-Blob (bei Erfolg) oder eine formatierte Fehlermeldung (bei Fehler) zurück. Keines wirft Exceptions — jedes Tool gibt ein verwendbares String-Ergebnis zurück.

Nachrichten (8)

Tool

Zweck

discord_send_message

An einen Kanal senden. Unterstützt Einbettungen, Antworten, Erwähnungssteuerung

discord_edit_message

Eigene Nachricht des Bots bearbeiten

discord_delete_message

Eine Nachricht löschen (durch Bot oder andere, mit Nachrichten verwalten)

discord_bulk_delete_messages

2-100 Nachrichten (<14 Tage alt) in einem Aufruf löschen

discord_get_message

Eine Nachricht per ID abrufen

discord_list_messages

Paginierter Kanalverlauf (vor/nach/um Cursor)

discord_pin_message / discord_unpin_message

Pins verwalten

Reaktionen (3)

Tool

Zweck

discord_add_reaction

Bot fügt eine Reaktion hinzu

discord_remove_reaction

Reaktion des Bots oder Benutzers entfernen

discord_get_reactions

Benutzer auflisten, die mit einem Emoji reagiert haben

Kanäle & Threads (5)

Tool

Zweck

discord_list_channels

Alle Kanäle in einer Gilde

discord_get_channel

Details eines einzelnen Kanals

discord_create_thread

Einen neuen Thread erstellen (öffentlich oder privat, verankert oder eigenständig)

discord_list_active_threads

Alle aktiven Threads in einer Gilde

discord_send_typing

„Bot schreibt…“-Indikator auslösen

Moderation (6)

Tool

Zweck

discord_get_member

Mitgliederprofil (Rollen, Beitrittsdatum, Timeout-Status)

discord_list_members

Paginierte Mitgliederliste (erfordert Server Members Intent)

discord_timeout_user

Stummschaltung via communication_disabled_until (max. 28 Tage, 0 zum Aufheben)

discord_kick_user

Aus der Gilde entfernen

discord_add_role / discord_remove_role

Rollenverwaltung

Server-Info (4)

Tool

Zweck

discord_list_guilds

Alle Gilden, in denen der Bot ist

discord_get_guild

Details einer einzelnen Gilde

discord_list_roles

Alle Rollen, sortiert nach Position

discord_get_audit_log

Aktuelle Audit-Log-Einträge (filtern nach Benutzer, Aktion usw.)

Nicht enthalten (absichtlich):

  • ban/unban — absichtlich. Nutze Discords UI; irreversible Aktionen sollten nicht per Agenten-Aufruf möglich sein

  • Kanal erstellen/löschen/bearbeiten — hoher Schadensradius, nutze die UI

  • Webhook CRUD — für die meisten Agenten-Flows nicht benötigt; kann in einem zukünftigen Release hinzugefügt werden

  • Sprachoperationen, Sticker/Emoji-Verwaltung — außerhalb des Geltungsbereichs für v0.1


Beispiel: Kanal zusammenfassen via Claude Code

User: Summarize the last 30 messages in the #dev channel of my Discord server, guild ID 1234...

Claude (calls discord_list_channels → finds #dev → calls discord_list_messages → writes summary)

Beispiel: Paperclip-Agent tägliche Zusammenfassung

// From an agent's prompt:
"Post the daily digest to channel 1234. Summarize the last 24h of activity
using discord_list_messages with limit=100, then format as an embed via
discord_send_message."

Fehlerbehandlung

Jedes Tool gibt ein verwendbares Textergebnis zurück. Bei Fehlern:

Error (DISCORD_50001, HTTP 403): Missing Access
Details: [...]
(This error is transient and may succeed on retry.)

Das MCP handhabt Wiederholungsversuche intern bereits für 429 (Ratenbegrenzungen) und 5xx (Serverfehler) mit exponentiellem Backoff.


Ratenbegrenzungen

Discord hat zwei Ratenbegrenzungsebenen:

  1. Pro Route — jeder API-Endpunkt hat unabhängige Buckets. Dieses MCP serialisiert Anfragen pro (Methode + Routenvorlage), um ein Überschreiten von 429 zu verhindern.

  2. Global — pro Bot, über alle Endpunkte hinweg. Das MCP respektiert Retry-After-Header global.

Du solltest darüber nicht nachdenken müssen. Wenn du wiederholt das globale Limit erreichst, tust du wahrscheinlich etwas, das einen Menschen in der Schleife erfordert.


Sicherheit

  • Commite niemals dein Bot-Token. Dieses MCP liest es beim Start aus der Umgebungsvariablen DISCORD_BOT_TOKEN.

  • Verwende Einladungs-URLs mit minimalen Berechtigungen. Gib Bots keine Administratorrechte, wenn du nur Nachrichten verwalten musst.

  • Audit-Log-Gründe — alle Moderationstools akzeptieren ein reason-Argument, das im Audit-Log von Discord erscheint. Nutze es.


Entwicklung

git clone https://github.com/devli13/mcp-discord.git
cd mcp-discord
npm install
npm test           # smoke tests (no live Discord calls)
npm run lint       # syntax check all files
npm start          # boot server over stdio (needs DISCORD_BOT_TOKEN)

Begleitprojekt — eingehende Ereignisse

Dieses MCP handhabt ausgehende REST-Aufrufe (senden, löschen, moderieren). Es hält kein Discord-Gateway-WebSocket, daher kann es nicht auf eingehende Ereignisse reagieren (ein Benutzer @erwähnt den Bot, DMs, neue Mitglieder treten bei).

Für eingehende Discord-Ereignisse in einem Paperclip-Setup verwende @devli13/paperclip-plugin-discord — ein Fork von @mvanhorn/paperclip-plugin-discord mit freiem @erwähnungs-Routing, DM-Unterstützung, einer serialisierten Nachrichtenwarteschlange pro Kontext und Ausfall-Erwähnungs-Backfill.

Die beiden Projekte sind so konzipiert, dass sie zusammenarbeiten: Das Plugin empfängt Ereignisse und ruft deinen Agenten auf; der Agent verwendet dieses MCP, um zu antworten und zu moderieren. Verwende eines oder beide, je nach deinem Setup.

Namensnennung

Siehe ATTRIBUTION.md. Kurzfassung: erstellt zusammen mit dem Fork von paperclip-plugin-discord von @mvanhorn, dessen Gateway-Handhabung die Designmuster hier inspirierte.

Lizenz

MIT — siehe LICENSE.

Install Server
A
license - permissive license
A
quality
D
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

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

  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that allows Claude to interact with Discord by providing tools for sending/reading messages and managing server resources through Discord's API.
    6
    19
    159
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    An MCP server that provides native Discord tools for Claude Code, enabling bidirectional communication with remote agents or humans via the Discord REST API. It allows users to send messages, read channel history, and manage reactions directly from their local environment.
    6
    22
    3
    MIT
  • F
    license
    -
    quality
    C
    maintenance
    An MCP server that enables Claude Desktop to interact with Discord through a dedicated bot. It allows users to list channels, read message history, and send messages directly from the AI interface.
    2
  • A
    license
    -
    quality
    D
    maintenance
    Comprehensive Discord MCP server with 66 tools that provides rich message context including emoji reactions, thread indicators, and attachment metadata inline. Enables AI assistants to interact with Discord servers for messaging, moderation, roles, channels, and more.
    159
    1
    MIT

View all related MCP servers

Related MCP Connectors

  • Markdown-first MCP server for Notion API with 8 composite tools and 39 actions.

  • Augments MCP Server - A comprehensive framework documentation provider for Claude Code

  • An MCP server that integrates with Discord to provide AI-powered features.

View all MCP Connectors

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/devli13/mcp-discord'

If you have feedback or need assistance with the MCP directory API, please join our Discord server