Skip to main content
Glama

Discord MCP-Server

Ein leichter, Multi-Guild Discord MCP-Server mit über 90 Tools

npm License Node Discord.js MCP

discord-mcp MCP server

Verwalte deinen gesamten Discord-Server über Claude Desktop, Claude Code, Cursor, VS Code Copilot oder jeden anderen MCP-kompatiblen Client. Nachrichten, Kanäle, Rollen, Berechtigungen, Moderation, Foren, Webhooks – alles per natürlicher Sprache.


Warum dieser Server?

  • Über 90 Tools — Nachrichten, Kanäle, Rollen, Berechtigungen, Moderation, Foren, Webhooks, geplante Events, Einladungen, DMs, Embeds und mehr

  • Multi-Guild — funktioniert über mehrere Server hinweg, keine GUILD_ID-Bindung

  • Leichtgewichtig — TypeScript + Node.js, ~25kB Paket, ~73MB Docker-Image (im Vergleich zu 400MB+ bei Java-Alternativen)

  • Modular — saubere Architektur, einfach mit neuen Tools zu erweitern

  • Zwei Installationsmethoden — npm oder Docker, du hast die Wahl


Schnellstart

Füge dies zu deiner MCP-Client-Konfiguration hinzu und ersetze YOUR_TOKEN_HERE durch deinen Bot-Token:

{
  "mcpServers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@pasympa/discord-mcp"],
      "env": {
        "DISCORD_TOKEN": "YOUR_TOKEN_HERE"
      }
    }
  }
}

Keine Installation erforderlich — npx erledigt alles.

Du hast noch keinen Bot? Siehe Erstellen deines Discord-Bots.


Konfiguration

Füge die obige Konfiguration zu deiner claude_desktop_config.json hinzu:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Starte Claude Desktop nach dem Speichern neu.

claude mcp add discord -e DISCORD_TOKEN=YOUR_TOKEN_HERE -- npx -y @pasympa/discord-mcp

Füge die obige Konfiguration zu ~/.cursor/mcp.json hinzu. Siehe Cursor MCP-Dokumentation für Details.

Füge dies zu deiner .vscode/mcp.json hinzu:

{
  "inputs": [
    {
      "type": "promptString",
      "id": "discord-token",
      "description": "Discord Bot Token",
      "password": true
    }
  ],
  "servers": {
    "discord": {
      "command": "npx",
      "args": ["-y", "@pasympa/discord-mcp"],
      "env": {
        "DISCORD_TOKEN": "${input:discord-token}"
      }
    }
  }
}

Siehe VS Code MCP-Dokumentation für Details.

{
  "mcpServers": {
    "discord": {
      "command": "docker",
      "args": [
        "run", "--rm", "-i",
        "-e", "DISCORD_TOKEN=YOUR_TOKEN_HERE",
        "pasympa/discord-mcp:latest"
      ]
    }
  }
}
git clone https://github.com/PaSympa/discord-mcp
cd discord-mcp
npm install && npm run build
{
  "mcpServers": {
    "discord": {
      "command": "node",
      "args": ["/absolute/path/to/discord-mcp/dist/index.js"],
      "env": {
        "DISCORD_TOKEN": "YOUR_TOKEN_HERE"
      }
    }
  }
}

Anstatt den Token in der MCP-Konfiguration zu übergeben, erstelle eine .env-Datei im Projektstammverzeichnis:

DISCORD_TOKEN=YOUR_TOKEN_HERE

Der Server lädt .env automatisch über dotenv.


Erstellen deines Discord-Bots

  1. Gehe zu discord.com/developers/applications

  2. New Application > gib ihm einen Namen

  3. Bot-Tab > Reset Token > kopiere den Token

  4. Aktiviere Privileged Gateway Intents:

    • Server Members Intent

    • Message Content Intent

  5. OAuth2 > URL Generator:

    • Scopes: bot

    • Berechtigungen: Send Messages, Read Message History, Manage Channels, Manage Roles, Kick Members, Ban Members, Moderate Members, View Audit Log, Manage Messages, Manage Threads, Add Reactions, Manage Guild, Manage Webhooks, Manage Events, Create Instant Invite

  6. Kopiere die generierte URL und lade den Bot auf deinen Server ein


Verfügbare Tools (91)

Entdeckung & Navigation

Tool

Beschreibung

discord_list_guilds

Liste alle Server auf, mit denen der Bot verbunden ist

discord_get_guild_info

Erhalte detaillierte Server-Infos (Name, Mitglieder, Kanäle, Rollen, Boosts)

discord_list_channels

Liste alle Kanäle in einem Server, gruppiert nach Kategorie

discord_find_channel_by_name

Finde einen Kanal anhand des Namens (teilweise Übereinstimmung)

Nachrichten (18 Tools)

Tool

Beschreibung

discord_read_messages

Lese die letzten N Nachrichten aus einem Textkanal

discord_send_message

Sende eine einfache Textnachricht

discord_reply_message

Antworte auf eine bestimmte Nachricht

discord_edit_message

Bearbeite eine vom Bot gesendete Nachricht

discord_delete_message

Lösche eine bestimmte Nachricht

discord_add_reaction

Füge ein Reaktions-Emoji zu einer Nachricht hinzu

discord_remove_reactions

Entferne Reaktionen (alle, nach Emoji oder nach Benutzer)

discord_get_reactions

Liste Benutzer auf, die mit einem bestimmten Emoji reagiert haben

discord_create_thread

Erstelle einen Thread aus einer Nachricht oder eigenständig

discord_bulk_delete_messages

Lösche mehrere Nachrichten gleichzeitig (2-100)

discord_send_embed

Sende ein Rich-Embed mit allen Optionen

discord_edit_embed

Bearbeite ein zuvor vom Bot gesendetes Embed

discord_send_multiple_embeds

Sende bis zu 10 Embeds in einer einzigen Nachricht

discord_pin_message

Pinne oder entpinne eine Nachricht

discord_fetch_pinned_messages

Liste alle gepinnten Nachrichten in einem Kanal auf

discord_search_messages

Suche Nachrichten nach Schlüsselwort (letzte 100)

discord_crosspost_message

Veröffentliche eine Nachricht für Follower eines Ankündigungskanals

discord_forward_message

Leite eine Nachricht an einen anderen Kanal weiter

Kanäle (8 Tools)

Tool

Beschreibung

discord_create_channel

Erstelle einen Text-, Sprachkanal oder eine Kategorie

discord_delete_channel

Lösche einen Kanal

discord_edit_channel

Bearbeite Name, Thema, Slowmode, NSFW-Flag

discord_move_channel

Verschiebe einen Kanal in eine/aus einer Kategorie

discord_clone_channel

Klone einen Kanal mit seinen Berechtigungen

discord_set_channel_position

Lege die Anzeigeposition innerhalb einer Kategorie fest

discord_follow_announcement_channel

Folge einem Ankündigungskanal

discord_lock_channel_permissions

Synchronisiere Berechtigungen mit der übergeordneten Kategorie

Kanal-Berechtigungen (6 Tools)

Tool

Beschreibung

discord_get_channel_permissions

Liste alle Berechtigungs-Overrides eines Kanals auf

discord_set_role_permission

Erlaube/verweigere Berechtigungen für eine Rolle in einem Kanal

discord_set_member_permission

Erlaube/verweigere Berechtigungen für ein Mitglied in einem Kanal

discord_reset_channel_permissions

Entferne alle Overrides (zurücksetzen auf geerbt)

discord_copy_permissions

Kopiere Overrides von einem Kanal zum anderen

discord_audit_permissions

Vollständiges Berechtigungs-Audit für alle Kanäle

Mitglieder (11 Tools)

Tool

Beschreibung

discord_list_members

Liste Servermitglieder mit ihren Rollen auf

discord_get_member_info

Detaillierte Mitgliedsinfos (Rollen, Berechtigungen, Beitrittsdatum)

discord_search_members

Suche Mitglieder nach Benutzername oder Spitzname

discord_set_nickname

Setze oder lösche den Spitznamen eines Mitglieds

discord_kick_member

Kicke ein Mitglied

discord_ban_member

Banne ein Mitglied (optional: lösche kürzliche Nachrichten)

discord_unban_member

Hebe den Bann eines Benutzers auf

discord_bulk_ban

Banne mehrere Benutzer gleichzeitig (Raid-Schutz)

discord_list_bans

Liste alle gebannten Benutzer auf

discord_timeout_member

Setze ein Mitglied in den Timeout (0 zum Entfernen)

discord_prune_members

Entferne inaktive Mitglieder (mit Testlauf)

Rollen (9 Tools)

Tool

Beschreibung

discord_list_roles

Liste alle Rollen mit Berechtigungen und Mitgliederanzahl auf

discord_create_role

Erstelle eine neue Rolle

discord_edit_role

Bearbeite eine Rolle (Name, Farbe, Berechtigungen, Hoist, erwähnbar)

discord_delete_role

Lösche eine Rolle

discord_add_role

Weise einem Mitglied eine Rolle zu

discord_remove_role

Entferne eine Rolle von einem Mitglied

discord_get_role_members

Liste alle Mitglieder mit einer bestimmten Rolle auf

discord_set_role_position

Ändere die Position einer Rolle in der Hierarchie

discord_set_role_icon

Setze ein benutzerdefiniertes Icon oder Unicode-Emoji für eine Rolle

Foren (10 Tools)

Tool

Beschreibung

discord_get_forum_channels

Liste alle Forenkanäle in einem Server auf

discord_create_forum_channel

Erstelle einen neuen Forenkanal

discord_create_forum_post

Erstelle einen Beitrag/Thread in einem Forum

discord_get_forum_post

Erhalte Details und Nachrichten eines Beitrags

discord_list_forum_threads

Liste Threads auf (aktiv + archiviert)

discord_reply_to_forum

Antworte auf einen Forenbeitrag

discord_delete_forum_post

Lösche einen Forenthread

discord_get_forum_tags

Erhalte verfügbare Tags

discord_set_forum_tags

Setze/aktualisiere Tags in einem Forum

discord_update_forum_post

Aktualisiere Titel, Archivstatus, Sperrstatus, Tags

Webhooks (8 Tools)

Tool

Beschreibung

discord_create_webhook

Erstelle einen Webhook in einem Kanal

discord_send_webhook_message

Sende über Webhook (benutzerdefinierter Name/Avatar, Embeds)

discord_edit_webhook

Bearbeite Name, Avatar oder Kanal eines Webhooks

discord_delete_webhook

Lösche einen Webhook

discord_list_webhooks

Liste Webhooks für einen Kanal oder Server auf

discord_edit_webhook_message

Bearbeite eine von einem Webhook gesendete Nachricht

discord_delete_webhook_message

Lösche eine von einem Webhook gesendete Nachricht

discord_fetch_webhook_message

Rufe eine bestimmte Webhook-Nachricht ab

Geplante Events (7 Tools)

Tool

Beschreibung

discord_list_scheduled_events

Liste alle geplanten Events in einem Server auf

discord_get_scheduled_event

Erhalte detaillierte Infos zu einem geplanten Event

discord_create_scheduled_event

Erstelle ein Sprach-, Stage- oder externes Event

discord_edit_scheduled_event

Bearbeite ein bestehendes geplantes Event

discord_delete_scheduled_event

Lösche ein geplantes Event

discord_get_event_subscribers

Erhalte Benutzer, die "Interessiert" markiert haben

discord_create_event_invite

Erstelle eine Einladung, die mit einem Event verknüpft ist

Direktnachrichten

Tool

Beschreibung

discord_send_dm

Sende eine Direktnachricht an einen Benutzer per Benutzer-ID

Einladungen (5 Tools)

Tool

Beschreibung

discord_list_invites

Liste alle aktiven Einladungen in einem Server auf

discord_list_channel_invites

Liste Einladungen für einen bestimmten Kanal auf

discord_get_invite

Erhalte Details zu einer Einladung per Code

discord_create_invite

Erstelle einen Einladungslink für einen Kanal

discord_delete_invite

Widerrufe eine Einladung

Moderation & Screening

Tool

Beschreibung

discord_get_audit_log

Rufe das Server-Audit-Log ab

discord_get_membership_screening

Erhalte das Mitgliedschafts-Screening-Formular

discord_update_membership_screening

Aktualisiere Screening-Regeln für neue Mitglieder

Statistiken

Tool

Beschreibung

discord_get_server_stats

Server-Statistiken: Mitglieder, Kanäle, Rollen, Boost-Level


Anwendungsbeispiele

"List all servers the bot is in"
"Read the last 10 messages in #general"
"Send 'Hello everyone!' to the announcements channel"
"Create a forum channel called 'feedback' with tags Bug, Feature, Question"
"Show the full permission audit for the server"
"Create a webhook on #notifications and send a test message"
"Ban user 112233445566 and delete their messages from the last 3 days"
"Create an event called 'Game Night' for next Friday at 8pm"
"List all upcoming events in the server"
"Create a permanent invite for #general"
"List all active invites and delete expired ones"
"Send a DM to user 112233445566 saying 'Your build passed!'"
"Search for members named 'john'"
"List all banned users in the server"
"Show all pinned messages in #general"
"Forward that message to #announcements"

Discord-IDs finden

Aktivieren den Entwicklermodus in Discord: Einstellungen > Erweitert > Entwicklermodus

Dann Rechtsklick auf einen Server, Kanal oder Benutzer > ID kopieren.


Projektstruktur

discord-mcp/
├── src/
│   ├── index.ts             ← Entry point (MCP server + transport)
│   ├── client.ts            ← Discord client + shared helpers
│   ├── constants.ts         ← Shared constants (limits, defaults)
│   └── tools/
│       ├── index.ts         ← Tool registry
│       ├── types.ts         ← Shared TypeScript interfaces
│       ├── discovery.ts     ← Guild/channel discovery
│       ├── messages.ts      ← Message CRUD, reactions, threads, embeds
│       ├── channels.ts      ← Channel management
│       ├── permissions.ts   ← Permission overwrites
│       ├── members.ts       ← Member management
│       ├── roles.ts         ← Role CRUD and assignment
│       ├── moderation.ts    ← Audit log
│       ├── screening.ts     ← Membership screening
│       ├── stats.ts         ← Server statistics
│       ├── forums.ts        ← Forum channels, posts, tags
│       ├── webhooks.ts      ← Webhook management
│       ├── scheduledEvents.ts ← Scheduled events
│       ├── invites.ts        ← Invite management
│       └── dm.ts             ← Direct messages
├── .github/workflows/       ← CI/CD (build check + auto release)
├── Dockerfile
├── .dockerignore
├── .env.example
├── package.json
├── tsconfig.json
├── CHANGELOG.md
├── CONTRIBUTING.md
├── SECURITY.md
└── README.md

Ein neues Tool hinzufügen

  1. Erstelle eine neue Datei in src/tools/ (z. B. events.ts)

  2. Exportiere definitions (Tool-Schemas) und handle() (Tool-Logik)

  3. Importiere und füge es zum modules-Array in src/tools/index.ts hinzu


Sicherheit

  • Committe niemals deinen Discord-Token in Git

  • Verwende Umgebungsvariablen oder eine .env-Datei (nicht versioniert)

  • Gib dem Bot nur die Berechtigungen, die er wirklich benötigt


Mitwirken

Beit

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

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