NapNodes

← Minecraft guides

Minecraft · updated 24 October 2026

DiscordSRV: Connect Your Minecraft Server Chat to Discord, Step by Step

With DiscordSRV, whatever is typed in the in-game chat shows up in a channel on your Discord and vice versa, and it also announces who joins, leaves or dies. It's a Paper plugin: it installs in a minute, and the only part that takes some work is creating the bot on Discord. Here's everything in order.

What you need

A Paper (or Purpur, or Spigot) server: DiscordSRV is a plugin (what type of server you have). It doesn't work on Fabric, Forge or NeoForge; there you use a mod that does the same, such as Discord Integration (covered at the end). NapNodes Minecraft servers come with Paper.

A Discord server where you have the “Manage Server” permission, because you're going to invite a bot, and about ten minutes.

Players don't install anything: the bridge lives on the server.

Rather not set it up yourself? Minecraft servers from €6 a month, no contract and a full refund within 72 hours. Or create a free Minecraft server, no card needed.

1. Create the bot on Discord

  1. Open the developer portal

    Go to discord.com/developers/applications with your Discord account and click “New Application”. Give it the name everyone will see (your server's, for example).

  2. Turn on the two read intents

    In the “Bot” section, scroll down to “Privileged Gateway Intents” and turn on “Server Members Intent” and “Message Content Intent”. Save. Without Message Content Intent, the bot sees that someone has written in the channel but not what, and Discord messages don't reach the game: it's the most common mistake.

  3. Copy the token

    In that same section, click “Reset Token” and copy what appears. That token is the bot's password: whoever has it controls the bot. Don't paste it in any chat or in a ticket; if it leaks, click “Reset Token” again and the old one stops working.

  4. Invite it to your Discord

    In “OAuth2” → “URL Generator”, tick the “bot” and “applications.commands” scopes and, under permissions, at least View Channels, Send Messages, Read Message History, Embed Links and Manage Webhooks. Open the link it generates, pick your Discord server and accept. There's no need to give it “Administrator”.

2. Install DiscordSRV on the server

  1. Find it in “Mods & plugins”

    In the NapNodes panel, inside your server, go to “Mods & plugins” → the “Plugins” tab, search for DiscordSRV and click “Install”. Only versions that work with your server's version show up. If you prefer, you can also download it from its page and upload it to the plugins folder from “Files”.

  2. Restart once

    Click “Restart now” (or “Restart” in the console). On startup, DiscordSRV creates its folder with the config and warns in the console that the token is missing: that's normal, you haven't given it one yet.

3. Give it the token and the channel

  1. Get the channel ID

    In Discord, “User Settings” → “Advanced” → turn on “Developer Mode”. Then right-click (or long-press on mobile) the channel where you want the game chat → “Copy Channel ID”. It's a long number.

  2. Open the config

    In “Files”, go into plugins/DiscordSRV and open config.yml.

  3. Paste the token

    On the BotToken line, between the quotes, paste the bot's token.

  4. Paste the channel

    Find the Channels line. It should end up like this, with your number: Channels: {"global": "123456789012345678"}. “global” is the normal game chat; don't change that word, only the number.

  5. Save and restart

    Save the file and restart the server. The console should say the bot has connected, and the Discord channel should get a notice that the server has started. Type something in the game and in Discord to check it gets through both ways.

Extras worth having

Console channel: in DiscordConsoleChannelId you can put the ID of another channel and you'll see the server console there. Careful: whatever is typed in that channel runs as a command on the server, so it has to be a private channel only admins can access. If you're not going to use it, leave it as zeros.

Linking accounts: each player types /discord link in the game, gets a code and sends it to the bot in a private message. It's useful for seeing who's who and for options such as giving a Discord role to people who play; all of that is in linking.yml and synchronization.yml.

Messages (format, join, leave, death and advancement notices) are changed in messages.yml. After touching the config, restart: it's the safest option.

If it doesn't work

Messages go from the game to Discord but not from Discord to the game: Message Content Intent is missing (step 1). Turn it on, save in the portal and restart the server.

Nothing gets through either way: the channel ID is wrong (you copied the Discord server's ID, or a message's, instead of the channel's) or the bot doesn't have permission to see or write in that channel. Check the channel permissions: if it's private, the bot's role has to be added.

The console says the token isn't valid: you copied only part of it or regenerated it afterwards. Copy it again and paste it between the quotes, with no spaces.

The bot shows as offline on Discord: it's only connected while the server is running. If the server is “Offline”, so is the bot. The NapNodes free server stops by itself after 20 minutes with nobody on; you start it from the panel when you're going to play and the bot comes back with it.

On Fabric, Forge or NeoForge: Discord Integration

If your server is modded, DiscordSRV won't load. The most used equivalent is Discord Integration (by ErdbeerbaerLP), with versions for Fabric, Forge and NeoForge: it also needs a bot created exactly as above, with the token and channel ID in its config file (inside the config folder). On NapNodes you install it the same way, from “Mods & plugins”, the “Mods” tab. It's a server-only mod: players don't need it.

Frequently asked questions

How do I connect my Minecraft server chat to Discord?

With the DiscordSRV plugin on a Paper server: you create a bot in the Discord developer portal with Message Content Intent turned on, invite it to your Discord, and in plugins/DiscordSRV/config.yml put its token in BotToken and the channel ID in Channels. Restart and you're done.

Why don't Discord messages reach the game?

It's almost always that Message Content Intent hasn't been turned on in the “Bot” section of the Discord developer portal. Without it, the bot can't read what's written in the channel.

Does DiscordSRV work on Fabric or Forge?

No, it's a plugin for Paper, Purpur and Spigot. Modded servers use an equivalent mod, such as Discord Integration, which exists for Fabric, Forge and NeoForge.

Do my players have to install anything?

No. DiscordSRV only goes on the server; players join with normal Minecraft, and on Discord all they need is to be in your server.

Is the DiscordSRV console channel safe?

Only if it's a private admin channel: whatever is typed in it runs as a command on the server. If you don't need it, don't turn it on.

Shall we set it up for you?

Minecraft servers from €6 a month, never oversold: your RAM is yours alone. And if you'd rather start without paying, there's a free Minecraft server, no card needed.

Your server doesn't show up in the game? Check it in a second with “Is my Minecraft server online?”: players, version and MOTD, free. Need a player's UUID for the whitelist or permissions? Look it up here. Handing out enchanted items? Build the command with the /give generator.

Keep reading

All Minecraft guides, sorted →