Discord MCP logo

Discord MCP

by PaSympa

Manage Discord guilds through MCP tools for messages, channels, moderation, roles, forums, webhooks, and more.

Install Discord MCP

Pick your client, then add it in one click or paste the config.

STDIONode.js
~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "pasympa-discord-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@pasympa/discord-mcp"
      ],
      "env": {
        "DISCORD_TOKEN": "YOUR_VALUE_HERE",
        "DISCORD_MESSAGE_CONTENT": "YOUR_VALUE_HERE",
        "DISCORD_GUILD_MEMBERS": "YOUR_VALUE_HERE",
        "DISCORD_MCP_TOOLSETS": "YOUR_VALUE_HERE",
        "DISCORD_ALLOWED_GUILDS": "YOUR_VALUE_HERE"
      }
    }
  }
}

Settings → Developer → Edit Config, merge this into mcpServers, then fully quit and reopen Claude Desktop.

Values are written into the snippet above so you can paste it as is. They never leave your browser.

Automated check passed— started and listed 99 tools correctly (22d ago).

Overview

PaSympa/discord-mcp MCP server connects MCP-compatible clients to Discord through a bot and exposes tools for working across multiple guilds. It supports discovery, message reading and sending, channel administration, reactions, embeds, threads, pins, searches, and destructive moderation actions. Configure it with a Discord bot token, then use npm, Docker, or a local Node.js build. Reach for it when an agent needs to inspect or operate Discord servers through natural-language tool calls.

Use cases

  • Discover guilds and resolve channel IDs
  • Read and search recent Discord messages
  • Send replies, embeds, and forwarded messages
  • Moderate messages with dry-run safeguards
  • Create and reorganize Discord channels

Key features

  • Multi-guild Discord access
  • Message and channel management
  • Embeds, threads, reactions, and pins
  • Guild and channel discovery
  • Dry-run destructive operations
  • Configurable MCP toolsets

Tools99

What Discord MCP lets your agent do. Expand a tool for its parameters.

Verified live~22.3k tokens of context

Security & health

What it can reach and how reliably it runs — from our own checks, not the maintainer’s claims.

ActiveLast checked Today

Recent health check succeeded.

17/18 checks healthy over the last 78d

Supply-chain signal

No high-severity advisories surfaced by our automated scan.

Critical 0High 0Medium 0Low 0

Scanned 9d ago via OSV.dev · @pasympa/discord-mcp (npm)

Adoption & maintenance

Factual signals from GitHub, npm, and our automated checks — not a rating.

GitHub stars29Stargazers on the source repository.
npm downloads3.9kPackage downloads in the last 30 days.
Last commit15d agoMost recent push to the default branch.
Availability100%Our rolling endpoint + install checks that succeeded.
Install checkPassedOur sandbox started it and listed its tools.
Tools exposed99Callable tools this server registers over MCP.
Directory activity3 viewsConfig copies, upvotes, and views on AllMCPs.

How Discord MCP works

What PaSympa/discord-mcp MCP server does

PaSympa/discord-mcp MCP server gives an MCP client access to Discord through a bot. Its tool collection covers multiple guilds rather than requiring one fixed server, with discovery tools for guilds and channels and operational tools for messages, threads, reactions, embeds, pins, and channel administration.

The supplied tools can list guilds, retrieve guild and channel information, locate channels by name, read or search messages, inspect attachments and pins, send or reply to messages, edit messages created by the bot, and forward existing messages. It also supports creating, editing, moving, cloning, reordering, and deleting channels. Some actions are irreversible, including deleting messages and channels.

How it works

The server authenticates to Discord with a bot token and exposes the Discord operations through MCP. Most operations require a guild, channel, thread, or message identifier. A typical workflow starts with discord_list_guilds, followed by discord_list_channels or discord_find_channel_by_name to resolve the target identifiers.

Message reads use Discord’s REST API and return structured fields such as author, content, timestamp, attachment count, and pin state. Channel-specific keyword search scans only the latest 100 messages, while guild-wide search uses Discord’s native search API. Reading history requires the bot to have View Channel and Read Message History permissions.

Destructive operations use safeguards where documented. Bulk message deletion and channel deletion default to a dry run, so a second call with dry_run:false is needed to perform the change. Bulk deletion skips messages older than 14 days. The server can also restrict accessible guilds with DISCORD_ALLOWED_GUILDS and reduce the advertised tool set with DISCORD_MCP_TOOLSETS.

Setup and configuration

PaSympa/discord-mcp MCP server requires Node.js 22 or later according to the repository metadata. The simplest setup runs the npm package with npx and passes DISCORD_TOKEN in the MCP client configuration. Docker and a build-from-source setup are also documented. A .env file at the project root can supply the token for local use.

The Discord application must have a bot token and the permissions needed by the operations it will perform. If a requested privileged intent is not enabled in Discord’s Developer Portal, set its corresponding environment flag to false or enable the portal setting.

Supported configuration variables include DISCORD_MESSAGE_CONTENT, DISCORD_GUILD_MEMBERS, DISCORD_MCP_TOOLSETS, and DISCORD_ALLOWED_GUILDS. Toolsets include discovery, messages, channels, permissions, members, roles, moderation, screening, stats, forums, webhooks, scheduled events, invites, and DMs.

Tools and capabilities

  • Discover guilds, guild metadata, channels, categories, and channel IDs.
  • Read, search, send, reply to, edit, forward, pin, and delete messages.
  • Send and replace rich embeds, including multiple embeds in one message.
  • Create threads and manage reactions, attachments, and pinned messages.
  • Create, edit, move, clone, reorder, and delete text, voice, and category channels.
  • Crosspost eligible messages from announcement channels.

Limitations and notes

Bot permissions determine which operations succeed. Editing is limited to messages and embeds previously sent by the bot, while deleting another user’s message requires Manage Messages. A channel can contain at most 50 pinned messages. Attachment URLs returned by Discord expire after 24 hours, so the attachment tool should be called again when a stored URL is no longer valid.

Configure toolsets carefully because a selected module includes its destructive tools as well as its read operations.

Reviews

No reviews yet — be the first to share how it worked for you.

Frequently Asked Questions about Discord MCP

PaSympa/discord-mcp is an MCP server that connects MCP-compatible AI clients to Discord through a bot. Its main tools discover guilds and channels, read and search messages, send replies and embeds, manage reactions and pins, and create or modify channels across multiple servers.

Install it by running the npm package with `npx`, or use the documented Docker or source-build methods. Add the server to your MCP client configuration and provide `DISCORD_TOKEN` in its environment. Source installation uses `npm install && npm run build`, followed by the built Node.js entry point.

The required permissions depend on the tool being called. Reading messages needs View Channel and Read Message History, sending needs Send Messages, embeds also need Embed Links, and channel administration needs Manage Channels. Moderation, reactions, pins, and other actions require their corresponding Discord permissions.

Yes, PaSympa/discord-mcp works with Cursor through its MCP configuration. Add the server definition to `~/.cursor/mcp.json`, pass the Discord bot token as `DISCORD_TOKEN`, and follow Cursor’s MCP configuration process.

Set `DISCORD_ALLOWED_GUILDS` to a comma-separated list of permitted guild IDs. Tool calls targeting other guilds are rejected, including calls addressed through channel IDs, thread IDs, webhooks, or invite codes.

Related MCP servers

Add a badge to your READMEShow it’s listed — live SVG, Markdown or HTML.

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewDiscord MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/pasympa-discord-mcp?style=directory)](https://allmcps.com/mcp/pasympa-discord-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/pasympa-discord-mcp"><img src="https://allmcps.com/api/badge/pasympa-discord-mcp?style=directory" alt="Discord MCP on AllMCPs" /></a>