How to Install DiscordSRV on a Minecraft Server

Link Minecraft chat to Discord with DiscordSRV: create the bot, turn on the two intents, paste the token and channel IDs into config.yml, and link accounts.

Updated Oct 3, 2026 · 5 min read

On this page

To install DiscordSRV, put the jar in plugins/ on a Paper or Purpur server and start it once. Create a bot in the Discord Developer Portal, switch on Server Members Intent and Message Content Intent, and invite it to your Discord. Then paste the bot token into BotToken and your channel ID into Channels: {"global": "123..."} in plugins/DiscordSRV/config.yml, and restart. Without the Message Content Intent, Discord messages never reach the game.

What you are working with

Piece What it is Where it lives
DiscordSRV jar The plugin, for Bukkit based servers plugins/
Discord application and bot The account that posts and reads messages Discord Developer Portal
Bot token The bot's password BotToken in config.yml
Channel ID A long number naming the Discord channel Channels in config.yml
Console channel ID (optional) A private channel that mirrors the server console DiscordConsoleChannelId
linking.yml, messages.yml Account linking rules and message formats plugins/DiscordSRV/

DiscordSRV 1.30.5 supports Paper, Purpur, Spigot and Folia up to Minecraft 26.3 (DiscordSRV on Modrinth). It needs a Bukkit based server: it does not run on Vanilla, Fabric, Forge or NeoForge. A new version called Ascension, with Fabric and NeoForge builds, is in testing, but the stable plugin is Paper only.

A Minecraft server whose in game chat is mirrored to a Discord channel by DiscordSRV

Before you start

  • Run Paper or Purpur. DiscordSRV is a plugin, so the server must load plugins.
  • You need Manage Server rights on the Discord server to invite a bot.
  • Turn on Developer Mode in Discord (User Settings, Advanced) so you can right click a channel and choose Copy Channel ID.

Step 1: Install the plugin

Stop the server, upload the DiscordSRV jar to plugins/, and start it. It creates plugins/DiscordSRV/config.yml and complains that no token is set. That is expected. Stop the server again.

Step 2: Create the bot

  1. Open the Discord Developer Portal and click New Application. Name it after your server.
  2. On the Installation tab, set Install Link to None and untick User Install.
  3. On the Bot tab, untick Public Bot, then click Reset Token and copy the token. Treat it like a password: anyone with it controls your bot.
  4. On the same tab, under Privileged Gateway Intents, turn on Server Members Intent and Message Content Intent. Save.

Step 3: Invite the bot

Copy the Application ID from the General Information tab and open this link with your ID on the end:

https://discord.com/oauth2/authorize?scope=bot+applications.commands&client_id=YOUR_APPLICATION_ID

Pick your Discord server and authorize. The DiscordSRV setup guide suggests Administrator, or at least Manage Roles, Manage Channels and Ban Members if you will use role sync and ban sync. Drag the bot's role above any roles it should manage.

Step 4: Fill in config.yml

Open plugins/DiscordSRV/config.yml with the server stopped and set the first few lines:

BotToken: "your-bot-token-here"

Channels: {"global": "219559668236681216"}

DiscordConsoleChannelId: "219559838890459137"
  • global is the in game chat channel name, the right side is the Discord channel ID. Keep the ID in quotes.
  • DiscordConsoleChannelId is optional. Use a private staff channel, because anything typed there runs as a console command. Leave it as "" to turn it off.

Start the server. The console should show DiscordSRV connecting, and a "server has started" message appears in your channel.

Players run /discord link in game. DiscordSRV replies with a 4 digit code and tells them to DM the bot with just that code. Once linked, you can sync roles and nicknames, or require linking to join in linking.yml. Players can only DM the bot if they share a Discord server with it.

The gotcha: the two intents nobody turns on

Discord treats some bot abilities as privileged, and they are off for every new bot. DiscordSRV needs two of them:

  • Message Content Intent. Without it, Discord sends the bot messages with the text removed. Minecraft to Discord works, so it looks half right, but nothing typed in Discord ever shows in game, and console channel commands do nothing.
  • Server Members Intent. Without it, role sync, nickname sync and account linking cannot see your members.

Depending on the version, a missing intent shows up either as a connection error mentioning disallowed intents (Discord close code 4014) or as silent one way chat. The fix is the same: tick both switches on the bot's page in the Developer Portal, save, and restart the Minecraft server. Changes to the token also need a full restart, while channel changes can be picked up with /discord reload.

Common problems

  • "Invalid token" or the bot stays offline: the token was copied with a space, was reset after you copied it, or BotToken is missing its quotes. Reset it and paste it again.
  • Game chat reaches Discord, Discord chat never reaches the game: Message Content Intent is off.
  • Nothing posts at all: the channel ID is wrong, it is a server ID instead of a channel ID, or the bot cannot see or send in that channel. Check the channel's permissions for the bot's role.
  • Role sync does nothing: the bot's role sits below the roles it should give. Move it higher.
  • Chat appears twice, or not at all, with a chat plugin: chat plugins with their own channels need DiscordSRV's hook for that plugin. Check DiscordSRV's startup lines for the hook.
  • DiscordSRV will not load: the server is Fabric, Forge or Vanilla. Switch to Paper.

DiscordSRV on GamezServers

On a Minecraft server from GamezServers, choose Paper or Purpur in Settings, download DiscordSRV from its link straight into plugins/ with the file manager, and edit config.yml in the browser. The bot stays online with the server around the clock, so your Discord bridge works even when nobody's PC is on. Press Backup before adding plugins. For more additions, see the best Minecraft server plugins.

FAQ

Why does Discord chat not show up in Minecraft?

The bot is missing the Message Content Intent. Turn it on in the Discord Developer Portal under the Bot tab and restart the server.

Where do I find a Discord channel ID?

Turn on Developer Mode in Discord's Advanced settings, then right click the channel and choose Copy Channel ID.

Does DiscordSRV work on Fabric or Forge?

The stable DiscordSRV needs Paper, Purpur or Spigot. A Fabric and NeoForge version is in testing as DiscordSRV Ascension.

They type /discord link in game and send the 4 digit code to the bot in a Discord DM.

Skip the setup. Your own Minecraft server.

$2.49USD first month

Then $4.99/mo. Just trying it? $1.25 for 3 days

Keep reading