Give your AI assistant full control of your Discord server.

Discord MCP is a Model Context Protocol server that runs your Discord server through your own bot. Day-to-day chat, moderation, and administration, all the way up to building an entire community server from a one-paragraph brief, or reshaping one that already exists. You describe what you want, your AI decides how, and Discord MCP makes sure nothing destructive happens without your confirmation.

Formerly Omnicord.

@orygn/discord-mcp

Claude, using Discord MCP, reports a whole server set up from one request, next to Discord showing the new Starfall Games channel list

What it can do

160+ tools across the full Discord admin surface.

Discord MCP turns the Discord REST API and gateway into a tool surface an AI client can drive directly. It enforces Discord's rules before they bite, queues politely behind rate limits, and returns results your AI can read and act on.

Build or edit a server from a brief

Describe the community you want and Discord MCP plans and executes the build: roles, categories, channels, and permissions. To change a server that already exists, export it, edit the blueprint, and apply exactly the reviewed changes, with before and after shown and risky changes flagged. Changes to a server's structure are recorded and can be undone. Messages in a deleted channel do not come back.

Messaging and reading

Send, edit, pin, react, run polls, schedule messages, forward messages between channels as quoted snapshots, post through webhooks, DM members, and attach files by link. Search runs on Discord's own server-wide message index: whole-word matches across every channel the bot can read, inside embeds and polls too. Reading covers channel history, members, roles, permissions, and the audit log, and the AI can look at the images in a message.

Moderation and AutoMod

Timeouts, kicks, bans, prune, and bulk cleanup, each with a preview before anything runs. Raid lockdown pauses new invites and DMs between non-friend members for up to 24 hours. AutoMod covers Discord's server-side filters, including the maintained slur and profanity preset lists, spam and mention-flood limits, and profile checks that flag banned words in usernames, nicknames, and bios.

Community and structure

Events that can repeat daily, weekly, biweekly, or monthly, plus stages, threads, forums, invites, welcome screen, and onboarding. Manage channels, categories, permission overwrites, reordering, cloning, and voice channel status lines. Add emojis, stickers, and soundboard sounds.

Real-time awareness

Subscribe to live server events and ask what is happening right now, or catch up on everything since a given time in one call. Discord MCP watches the gateway so your AI does not have to poll for changes.

Security review and diagnostics

A security review ranks what is risky in a server, with a fix for each, and shows who can see which channel. A setup check runs plain-English checks against your bot and tells you the exact fix for anything wrong. Bot info, rate-limit status, and permission explainers round it out.

The safety model

Nothing destructive happens without your confirmation.

Giving an AI control of a live server is only sensible if the dangerous actions are gated by something other than the model's judgment. In Discord MCP, that gate is the server itself.

A confirmation gate on every destructive action

Deleting, banning, kicking, timeouts, and bulk actions never execute on the first call. The tool returns a human-readable preview and a single-use token bound to that exact action, which expires after two minutes (ten for undo). In apps that can show one, confirming is a dialog the AI cannot answer for you. Elsewhere the AI relays the preview and calls again with the token; the server checks that the token matches the previewed action but cannot tell whether a person approved it, so DISCORD_MCP_CONFIRM=dialog is there to refuse destructive actions in those apps.

Power and access are confirmed too

Handing out power or access goes through the same gate: giving someone moderator or admin powers, opening a private channel to them, or lifting a ban. So does taking a protection down, such as lowering verification or turning an AutoMod rule off. Putting a protection up never waits.

Moderation that checks the rules first

Before any punitive action, Discord MCP preflights Discord's role hierarchy, owner protection, and self protection. The bot cannot act above its station or against the owner or itself, and the failure mode is a clear explanation rather than a raw 403.

Local-first, no LLM, no cloud

There is no LLM inside Discord MCP and no service behind it. The AI is your own client and the bot token stays in a local file. Nothing is sent to Orygn and there is no account to create. Discord MCP controls a bot, not your user account, so it can never act as you or read your DMs.

A hardened transport for self-hosting

The HTTP transport uses bearer auth compared in constant time, rejects browser origins unless allowlisted, validates the Host header to close DNS rebinding, and refuses to start if bound beyond localhost without a token. The Docker image runs as a non-root user. A security self-audit mapped to the OWASP MCP Top 10 is published in the repository.

Install

One command from a bare Discord app to a working setup.

The setup wizard validates every step against Discord as you go, so you do not have to read a manual to get it right. You need a Discord account, a bot you create in the Developer Portal, and Node 22 or newer.

One-command setup

Run npx @orygn/discord-mcp init. The wizard takes the bot token with input hidden, verifies it live against Discord, checks the privileged intents and waits while you fix any that are off, generates an invite link at the permission level you pick, and writes the config into your AI client (backing up the file first). Claude Desktop, Claude Code, Cursor, and Windsurf are detected automatically. On a machine set up under the previous name, the same command moves the existing setup over.

From source

Run git clone https://github.com/OrygnsCode/discord-mcp.git, then npm install, npm run build, and node dist/index.js init. The stdio transport is the default for desktop MCP clients that spawn a local process.

Docker

The orygn/discord-mcp image runs the HTTP transport as a non-root user with the container health check wired to the health endpoint. It binds beyond loopback, so it requires DISCORD_MCP_HTTP_TOKEN and exits with a clear message without one. The token arrives through the environment at runtime and is never baked into the image.

Self-host over HTTP

Run the Streamable HTTP transport for remote-capable clients and self-hosting. This is also the path for ChatGPT, which supports remote MCP servers only, so it connects to Discord MCP through a self-hosted HTTPS endpoint rather than the local flow.

Distribution

Published on npm, Docker Hub, and the official MCP Registry.

Install it from npm, pull the image from Docker Hub, or find it in the official MCP Registry as io.github.OrygnsCode/discord-mcp. Free and open source under the Apache License 2.0.

npm @orygn/discord-mcp Docker orygn/discord-mcp MCP Registry listing Apache-2.0

Built with

TypeScript on Node.js, tested across three operating systems.

The server talks to Discord over REST and the gateway, queues behind rate limits, and reserves stdout for the MCP protocol. It speaks the 2026-07-28 MCP protocol and still serves 2025 clients. CI runs the build, unit logic, and the protocol smoke suites on Linux, Windows, and macOS on Node 24, plus Linux on Node 22. An install pulls 20 packages, down from about 110.

TypeScript (strict) Node.js ≥22 MCP SDK discord.js REST + WS stdio + Streamable HTTP Zod Docker (alpine, non-root) CI on Linux, macOS, Windows

FAQ

Common questions about Discord MCP.

Yes, by design. Every destructive action (delete, ban, kick, timeout, bulk cleanup) returns a preview and runs only after a confirmation that Discord MCP itself checks, not the AI model's judgment. In apps that can show one, that confirmation is a dialog the AI cannot answer for you. Handing out moderator powers, opening a private channel, and lifting a ban are confirmed the same way.
Not without a confirmation for each destructive step. The confirmation token is single use and expires after two minutes. You also choose the bot's permission level during setup, and the recommended option leaves out the full Administrator flag. Changes to a server's structure are recorded and can be undone, though messages in a deleted channel do not come back.
No. There is no LLM inside Discord MCP and no cloud service behind it. The AI is your own client. The bot token and all data stay on your machine, and nothing is sent to Orygn. There is no account to create. An installed copy asks npm once a day whether a newer version is out; that request carries only the package name, and DISCORD_MCP_UPDATE_CHECK=false turns it off.
Yes. Discord MCP is free and open source under the Apache License 2.0, so anyone can read, use, modify, and self-host it, including businesses running their own communities. Versions up to 1.4.1, published as Omnicord, stay under the Elastic License 2.0.
You choose at setup. The recommended set covers managing channels, roles, messages, members, webhooks, and events without the Administrator bit. A moderation-only set and a full Administrator set are also offered. Permissions are per server and you can edit them later in Discord.
Claude Desktop, Claude Code, Cursor, and Windsurf are detected automatically by the setup wizard, and any other MCP client works with a config snippet. ChatGPT works only through the self-hosted remote HTTP transport, not the one-command local flow, because it supports remote MCP servers only.
No. Discord MCP is a local tool, not a hosted always-on bot. The bot is online while your AI client is running. If you want it reachable continuously, you can self-host the HTTP transport.
No. Setup is one command followed by a guided wizard that validates each step against Discord as you go: it checks your bot token live, walks you through the privileged intents, generates an invite link, and writes the config into your AI client for you.
Omnicord was renamed discord-mcp in version 2.0. Running npx @orygn/discord-mcp init moves an existing setup over and backs up each AI client config first.

Built by Orygn

Discord MCP is one of several tools Orygn has built around AI assistants and operational control.

Orygn builds custom software, security tooling, and infrastructure-level systems for teams that need them production-grade from day one. Discord MCP came out of the same kind of work, applied to the job of letting an AI assistant run real systems safely.

Work with Orygn