SuperAPI AI Directory

Omnicord

Discord chat, moderation, automod, events and administration, including building a server from a description, with confirmation for destructive actions.

Open website

About this tool

[Purpose] Omnicord is an MCP server that gives AI agents full operational control over a Discord server, covering everyday chat, moderation, administration, and building an entire community server from a single brief. The user's AI client (such as Claude Desktop, Cursor, Windsurf, Claude Code, or another MCP client) acts as the brain, and Omnicord acts as the hands: it connects to Discord through the user's own bot, enforces Discord rules before problems occur, queues according to rate limits, and holds every destructive operation behind a preview that requires confirmation. Omnicord itself contains no LLM and has no cloud service behind it; the bot token stays in a file on the user's machine.

[Main Capabilities]

  • Provides more than 150 tools; the complete contract for the tools is in the project's tool catalog.
  • Covers everyday operations such as chat, moderation, and administration, and also supports building a complete community server from a single brief.
  • Security model: destructive operations such as deletions, bans, kicks, mutes, and bulk actions are not executed on the first call; instead, they return a human-readable preview and a confirmation token bound to that specific operation. Only a repeated call with the token will execute it. Tokens are single-use and expire after two minutes. Moderation also pre-checks Discord's hierarchy rules, server owner protection, and self-protection before the confirmation gate, so failures appear as explanations rather than 403s. This mechanism is enforced by Omnicord itself and does not rely on model judgment; a session that is interfered with or compromised cannot skip it.
  • Multi-bot support: a single installation can drive multiple bots, one per server. When pointing at a server, it uses the bot that is actually in that server; test bots can coexist with production bots or separate bots for each community, with no need to swap tokens. It can be configured through the wizard's "how many bots" prompt, or by manually editing bots.json. Destructive previews indicate which bot will perform the operation, so misrouting can be caught before running. Single DISCORD_TOKEN usage remains unchanged and unaffected.

[How to Use] Requires Node 20 or newer and a Discord account. It can be installed with a single command, or from source. The wizard goes from an empty Discord application to a usable configuration in about a minute: it accepts the bot token as hidden input, verifies it online with Discord, checks the privileged intent switches, and waits if they are not enabledUser correction, generate an invite link at the selected permission level, save the token locally (source checkouts use a gitignored .env, npx or global installs use .omnicord/.env in the user folder), and write the omnicord entry into the AI client configuration (backing up the file first). Claude Desktop (including the Microsoft Store version), Cursor, Windsurf, and project-level Claude Code are detected automatically, even if MCP has not yet been configured inside them; other clients get a pasteable snippet. The wizard only adds the omnicord entry and does not overwrite the rest of the file. Afterward, fully restart the AI client and ask: "run a setup check on my Discord bot", and you will get eight checks, plain-English results, and the exact fix for any issue.

Transports: stdio is used by default and is suitable for desktop MCP clients; Streamable HTTP is for clients that support remote and for self-hosting. Because the HTTP endpoint sits behind a bot token, the default settings are strict: binding outside localhost is refused when OMNICORD_HTTP_TOKEN is not set, bearer authentication uses constant-time comparison, browser origins are rejected unless whitelisted, and in loopback mode the Host header is validated to close DNS rebinding. There is a published image on Docker Hub (orygn/omnicord), and you can also build it yourself; the image runs the HTTP transport as a non-root user, the container health check connects to the health endpoint, and it binds outside loopback so OMNICORD_HTTP_TOKEN is required and it exits with a clear message when it is missing. Tokens are not stored in the image; they are all passed in at runtime via environment variables. To build it yourself, run docker build -t omnicord .; with compose, export the two secrets and then run docker compose up -d.

Configuration can be done via environment variables or a .env file (written by the wizard; source checkouts use .env next to package.json, while npx and global installs use .omnicord/.env in the user folder). Multi-bot configuration is in bots.json in the same directory. No tokens are placed in the client configuration; the server, regardless ofwhere the client is launched from, can find .env and bots.json: it checks OMNICORD_HOME (if set), the current directory, the package root, and .omnicord in the user folder in order, and real environment variables take precedence over all of the above.

[Use cases] Suitable for users who want to manage a Discord server with an AI assistant, including everyday chat and moderation, administration, and quickly setting up a complete community server from a short description; it is also suitable for scenarios that need to manage multiple bots or multiple community servers in one installation.

[Limitations]

  • Requires Node 20 or newer and a Discord account.
  • Destructive operations must go through a confirmation gate and cannot be skipped.
  • The HTTP transport is strictly limited by default, and binding outside loopback requires OMNICORD_HTTP_TOKEN.
  • The acceptance suite requires DISCORD_TOKEN and an OMNICORD_GUILD pointing to a disposable test server; the unit and smoke suites do not require a Discord token.
  • The license is Elastic License 2.0 (source available): anyone may freely read, use, modify, and self-host it, including businesses operating their own community; the only prohibition is providing Omnicord as a hosted or managed service to third parties. The code is public for auditing and may not be resold as a service.
  • Versions follow semantic versioning and are recorded in CHANGELOG.md, with 1.0.0 being the public release version.

Other information: the documentation is also written for AI assistants, and pages can be pasted to an AI to have it guide the operation. Omnicord is also listed on the official MCP registry, Smithery, and Docker Hub. The project is built by Orygn LLC, and the security report email is security@orygn.tech.