Sueta

DiscordGate

1.5.3+velocity

Require Discord account linking before players can join. Integrates with BaxiBot

·Plugin
Tested MC versions
1.20, 1.21, 26.1, 26.2, 26.3

DiscordGate

Gate your Minecraft server behind Discord. Only linked players can join.

Powered by BaxiBot.

Flow

  1. Player joins - kicked with code
  2. /mc link <code> in Discord
  3. Baxi verifies - whitelisted
  4. Player can join normally

Features

  • Discord-gated whitelist
  • Bedrock/Geyser compatible
  • /dg (status/code), /dgunlink
  • Auto-role, announce channel, DM on link
  • MC ↔ Discord chat bridge
  • Velocity standalone support

Commands

In-game

CommandPermDescription
/dgallStatus/code
/dg unlinkallUnlink
/dg announce [--discord] <msg>adminBroadcast
/dg reload / lock / unlockadminServer control
/dg admin link/unlink <player>adminManual link

Discord
/mc link <code> · /mc unlink · /mc status · /mc admin unlink/lookup <user>

Setup — Paper

port: 4321
bind-address: "0.0.0.0"
secret: "your-secret"

Dashboard → MC Link → API URL + secret → enable.

Setup - Velocity

BaxiBot - Velocity :4321 → Backends
port=4321
bind-address=0.0.0.0
secret=your-secret
kick-message=<red>Not linked!</red> /mc link {token}
token-ttl-minutes=10

Backends: white-list=false, not internet-facing.

Cross-chat (Velocity network)

Needs both plugins. Same secret everywhere.

Each Paper backend:

chat-bridge-enabled: true
chat-relay-source: "paper"

Velocity:

chat-bridge-enabled=true
chat-relay-source=paper

Dashboard: enable cross-chat, set channel + webhook URL.

Troubleshooting

  • No MC-Discord: check Paper log for 401 (secret mismatch)
  • No Discord→MC: dashboard API URL not pointing at Velocity
  • Duplicate messages: chat-relay-source missing on Velocity

Requirements

  • Paper 1.21.1+ or Velocity 3.3+ (with Paper backend)
  • BaxiBot in your Discord server

Similar projects

Plugin →