MailboxGUI-DiscBridge connects MailboxGUI delivery events to DiscordSRV notifications on
Spigot, Paper, and Purpur backend servers. The released DiscBridge 2.0.0 Free edition provides
local-server notifications, while the unreleased Premium edition is still in development for network-wide notification support.
Wiki sections
Overview
This is the default wiki for MailboxGUI-DiscBridge 2.0.0 and MailboxGUI 6.0.0.
DiscBridge is a backend-server addon, not a bundled MailboxGUI module or proxy plugin.
Release status: MailboxGUI-DiscBridge 2.0.0 Free has been publicly released. DiscBridge Premium is still in development and has not been released yet.
Free must pair with Free, and Premium must pair with Premium.
The editions are deliberately checked at startup. A mismatched pair is unsupported
and DiscBridge disables itself instead of running in a partially compatible state.
Not compatible: MailboxGUI Premium + DiscBridge Free.
Not compatible: MailboxGUI Free + DiscBridge Premium.
DiscBridge runs on Spigot, Paper, or Purpur backend servers. It listens for
MailboxGUI 6.0.0 mail delivery events and sends Discord notifications through DiscordSRV.
In 2.0.0 the installed edition determines the operating mode automatically: Free uses
LOCAL; Premium uses NETWORK_NODE. There is no manual mode setting.
What's New in 2.0.0
Separate Free and Premium builds with strict edition pairing against MailboxGUI 6.0.0.
Automatic LOCAL mode for Free and Premium NETWORK_NODE mode for network notifications.
Mail expiration details are available to localized Discord notifications through the {expiration} placeholder.
Separate Free and Premium update feeds, including protected Premium downloads.
Premium update-login admin commands for saving, checking, or clearing website credentials.
Configuration format updated to version 4.
What's New in 1.1.1
Updated Simplified Chinese in-game language file: language/messages_zh_cn.yml.
Added Hong Kong Traditional Chinese in-game language file: language/messages_zh_hk.yml.
Updated Simplified Chinese Discord message template file: disclanguage/messages_zh_cn.yml.
Added Hong Kong Traditional Chinese Discord message template file: disclanguage/messages_zh_hk.yml.
Added zh_hk language selection, config language, and default Discord message language support.
Special thanks to nice for contributing language/messages_zh_cn.yml, language/messages_zh_hk.yml, disclanguage/messages_zh_cn.yml, and disclanguage/messages_zh_hk.yml.
What's New in 1.1.0
Book Letter Discord DM notifications for MailboxGUI 5.1.0 Book Letter deliveries.
Updated COD package {price} placeholder support using MailboxGUI 5.1.0 codPriceText.
Localized Discord DM and channel message files under /plugins/MailboxGUI-DiscBridge/disclanguage/.
New /mbdiscord language <language> command for each player's individual Discord DM language.
Direct migration from 1.0.x custom config.ymlmessages.* templates into disclanguage/messages_en.yml.
Migration support for the temporary unreleased root messages.yml test-build layout.
Requirements
MailboxGUI 6.0.0 in the matching Free or Premium edition.
DiscordSRV installed on the Bukkit/Paper/Purpur backend where DiscBridge runs.
Java 17 or newer.
Spigot, Paper, or Purpur backend server, not Velocity itself.
Spigot/Paper/Purpur 1.18.2 through 1.21.11.
Spigot/Paper/Purpur 26.1.x and 26.2.x.
Redis is required only for the developing Premium network edition.
The Free editions are for standalone/local notification delivery. Premium is a paid
edition still in development and is not released yet; it will provide the paired
MailboxGUI Premium network notification path when production-ready.
Players must link their Minecraft account with DiscordSRV before DiscBridge can send
them Discord DMs.
Downloads
Use the official ImagineCraft plugin download pages for MailboxGUI and MailboxGUI-DiscBridge releases.
Install the matching MailboxGUI 6.0.0 edition first. DiscBridge 2.0.0 also requires DiscordSRV. Never mix a Free jar with a Premium jar.
Installation
Stop the backend server.
Install MailboxGUI 6.0.0 Free for DiscBridge Free, or Premium for DiscBridge Premium when available.
Install DiscordSRV on the backend where DiscBridge will run.
Place the MailboxGUI-DiscBridge jar in the server plugins folder.
Start the server once to generate config, Discord message language, in-game language, and data files.
The final 1.1.0 system does not use
/plugins/MailboxGUI-DiscBridge/messages.yml as an active message file.
Discord templates are in /plugins/MailboxGUI-DiscBridge/disclanguage/.
Operating Modes
LOCAL Mode — Free
DiscBridge 2.0.0 Free automatically uses LOCAL. Use it for standalone servers and
single-backend setups. Install MailboxGUI, DiscordSRV, and MailboxGUI-DiscBridge on
the same backend. DiscBridge listens to local MailboxGUI delivery events and does not
subscribe to MailboxGUI network Redis events.
DiscBridge Free must be paired with MailboxGUI Free.
NETWORK_NODE Mode — Premium
NETWORK_NODE belongs to the paid Premium edition, which is still in
development and not released yet. It is designed for Velocity-style or
BungeeCord-style networks using MailboxGUI Premium network mode. Install MailboxGUI on every backend that uses mail, enable MailboxGUI network
mode on those backends, then install DiscordSRV and MailboxGUI-DiscBridge on only one
backend.
DiscBridge Premium automatically uses NETWORK_NODE and must pair with
MailboxGUI Premium. That backend acts as the Discord notification node. Other backends do not need DiscordSRV or
DiscBridge unless you intentionally run separate notification systems.
DiscBridge does not run on the proxy itself. It reads Redis and network settings from
MailboxGUI; DiscBridge has no Redis or MySQL config of its own. If
NETWORK_NODE is selected but MailboxGUI network mode is disabled,
DiscBridge disables safely with clear console errors.
Which Mode Should I Use?
Use DiscBridge Free with MailboxGUI Free for a standalone backend; it automatically uses LOCAL.
Use DiscBridge Premium with MailboxGUI Premium for a network notification node when Premium becomes available.
Do not attempt to select a mode in config.yml; the edition controls it.
Do not install DiscBridge on the proxy. Install it on a backend server.
DiscordSRV Setup
DiscBridge uses DiscordSRV for account linking and Discord delivery. Configure
DiscordSRV first, confirm the bot is online, and have players link with
/discord link.
The bot must be able to send direct messages for player DMs. If using the admin mass
mail channel notice, the bot also needs access to the configured channel and permission
to send messages there.
locale.default-language controls fallback in-game /mbdiscord command messages.
discord-messages.default-language is the fallback Discord message
language. It is used when a player has not selected a Discord DM language, and it is
always used for admin/API mass-mail channel notices. Player-selected Discord languages
do not affect channel notices.
Hong Kong Traditional Chinese Discord default
discord-messages:
default-language: "zh_hk"
Supported Chinese language codes are zh_cn, zh_hk, and
zh_tw. Supported native names include 简体中文,
繁體中文(香港), and 繁體中文.
Discord DM and channel templates are no longer stored in config.yml.
Edit /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml instead.
Network Setup with MailboxGUI
Standalone Setup
Install MailboxGUI 6.0.0 Free.
Install DiscordSRV.
Install MailboxGUI-DiscBridge 2.0.0 Free. It selects LOCAL automatically.
Configure DiscordSRV.
Link account with /discord link.
Enable notifications with /mbdiscord enable.
Test with /mbdiscord admin testdm <player> and /mbdiscord admin testchannel.
Velocity/BungeeCord-Style Network Setup
This setup requires MailboxGUI Premium + DiscBridge Premium. Premium is paid, still in development, and not released yet.
Install MailboxGUI Premium on every backend that uses mail.
Enable MailboxGUI network mode on every backend.
Set up shared MySQL/MariaDB and Redis in MailboxGUI. Redis is required for network server mode.
Install DiscordSRV and DiscBridge Premium on only one backend; it selects NETWORK_NODE automatically.
Do not install DiscBridge or DiscordSRV on other backends unless intentionally running separate notification systems.
Use /mbdiscord admin mode and /mbdiscord admin status to confirm the node is active.
Send test mail from another backend and confirm the NETWORK_NODE backend sends the Discord notification.
Notification Behavior
Individual Mail
Player Classic Letter, Book Letter, package, COD package, COD item-currency payment,
returned COD, and money mail can send Discord DMs when eligible. Admin
single-recipient mail and API/system single-recipient mail can also send Discord DMs.
Discord DM Language Selection
Individual Discord DMs use the recipient's selected Discord DM language if one is
set. Otherwise, DiscBridge uses discord-messages.default-language.
/mbdiscord language English
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language German
/mbdiscord language Deutsch
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
This command changes only that player's individual Discord DM language. It does not
change admin/API mass-mail channel notice language.
DM Eligibility
direct-messages.enabled must be true.
The recipient must be linked with DiscordSRV.
The recipient must have /mbdiscord enable.
If the player is online, online DMs must be allowed globally or by player setting.
The recipient must not ignore the sender.
The recipient must not ignore admin/server mail for admin-like mail.
Admin/API Mass Mail
Default behavior is one Discord channel notice only. DiscBridge does not DM every
recipient by default. Optional mass DMs are disabled by default.
If mass DMs are enabled, DiscBridge checks actual eligible recipients, counts only
eligible recipients, honors the configured cap and queue settings, and can skip mass
DMs while relying on the channel notice if the eligible count is over the cap.
Admin/API mass-mail channel notices always use
discord-messages.default-language. Player-selected Discord DM languages
do not affect channel notices. If optional queued mass DMs are enabled, those queued
individual DMs use each recipient's selected Discord DM language when set.
Message Templates and Placeholders
Discord DM and channel templates live in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
dm-book-letter:
- "📬 You received a book letter from {sender} on {server}."
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
dm-cod-package:
- "📦 You received a COD package from {sender} on {server}."
- "Price: {price}"
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
dm-cod-item-currency-payment:
- "💜 You received a COD item-currency payment from {sender} on {server}."
- "Payment: {price}"
- "Check your mailbox, a public Post Office box, or a Post Office NPC in-game."
In 2.0.0, {expiration} shows the expiration date and time for
expiring mail and is blank when the delivery does not expire. The alias
%expiration% is also replaced. The {price} placeholder supports MailboxGUI 6.0.0
codPriceText, including Vault money, item currency, XP, saved
item/template currency, and combined COD prices.
Player Commands
Command
Purpose
/mbdiscord help
Shows the default player help page.
/mbdiscord help 1
Shows player help page 1.
/mbdiscord help 2
Shows player help page 2.
/mbdiscord status
Shows personal notification, online DM, ignore, and link status.
/mbdiscord enable
Enables personal Discord mail notifications.
/mbdiscord disable
Disables personal Discord mail notifications.
/mbdiscord online on
Allows Discord DMs while the player is online.
/mbdiscord online off
Disables Discord DMs while the player is online unless the server default allows them.
/mbdiscord online toggle
Toggles the player online DM preference.
/mbdiscord language <language>
Sets only the player’s individual Discord DM message language.
/mbdiscord ignore <player>
Ignores player-origin mail notifications from a sender.
/mbdiscord unignore <player>
Removes a sender from the ignore list.
/mbdiscord ignorelist
Shows ignored player senders.
/mbdiscord ignoreadmin
Ignores admin/server mail notifications.
/mbdiscord unignoreadmin
Allows admin/server mail notifications again.
Discord DM Language Command
/mbdiscord language <language> changes only the player's
individual Discord DM language.
/mbdiscord language English
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language German
/mbdiscord language Deutsch
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
Sends a diagnostic direct-message test to a linked player.
/mbdiscord admin testchannel
Sends a diagnostic message to the configured admin mass mail channel.
/mbdiscord update and /mbdiscord update confirm stage a jar for
the next restart. They do not hot-swap the running plugin. If a newer jar is already
staged, DiscBridge tells admins to restart instead of staging again.
Permissions
Permission
Purpose
mailboxguidiscbridge.use
Use player commands.
mailboxguidiscbridge.online
Use online DM preference commands.
mailboxguidiscbridge.ignore
Use player ignore, unignore, and ignorelist commands.
mailboxguidiscbridge.ignoreadmin
Use ignoreadmin and unignoreadmin commands.
mailboxguidiscbridge.admin
Base admin access.
mailboxguidiscbridge.admin.reload
Reload bridge config, Discord message language files, in-game language files, and player data.
mailboxguidiscbridge.admin.status
View admin status and mode diagnostics.
mailboxguidiscbridge.admin.test
Run test DM and test channel diagnostics.
mailboxguidiscbridge.admin.update
Run update checks and stage updates.
Discord Message Languages
Discord DM and channel message templates are stored in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
These are separate from the in-game command language files in
/plugins/MailboxGUI-DiscBridge/language/.
Each file contains the same Discord template keys translated for that language.
Player-selected Discord languages are used for individual DMs only. Admin/API
mass-mail channel notices always use discord-messages.default-language.
In-Game Command Language Files
In-game /mbdiscord command messages are stored in
/plugins/MailboxGUI-DiscBridge/language/messages_*.yml.
messages_de.yml
messages_en.yml
messages_es.yml
messages_fr.yml
messages_it.yml
messages_ja.yml
messages_ko.yml
messages_nl.yml
messages_pl.yml
messages_ru.yml
messages_sv.yml
messages_uk.yml
messages_zh_cn.yml
messages_zh_hk.yml
messages_zh_tw.yml
Discord Message Template Files
Discord DM and channel templates are generated under
/plugins/MailboxGUI-DiscBridge/disclanguage/. These files are separate
from the in-game command language files.
disclanguage/messages_de.yml
disclanguage/messages_en.yml
disclanguage/messages_es.yml
disclanguage/messages_fr.yml
disclanguage/messages_it.yml
disclanguage/messages_ja.yml
disclanguage/messages_ko.yml
disclanguage/messages_nl.yml
disclanguage/messages_pl.yml
disclanguage/messages_ru.yml
disclanguage/messages_sv.yml
disclanguage/messages_uk.yml
disclanguage/messages_zh_cn.yml
disclanguage/messages_zh_hk.yml
disclanguage/messages_zh_tw.yml
Supported language codes: en, de, es, fr, it, ja, ko, nl, pl, ru, sv, uk, zh_cn, zh_hk, zh_tw.
Supported Chinese language codes are zh_cn, zh_hk, and
zh_tw. The matching files include messages_zh_cn.yml,
messages_zh_hk.yml, messages_zh_tw.yml,
disclanguage/messages_zh_cn.yml,
disclanguage/messages_zh_hk.yml, and
disclanguage/messages_zh_tw.yml.
Special thanks to nice for contributing the updated Simplified Chinese
(zh_cn) and new Hong Kong Traditional Chinese (zh_hk) language
files: language/messages_zh_cn.yml, language/messages_zh_hk.yml,
disclanguage/messages_zh_cn.yml, and
disclanguage/messages_zh_hk.yml.
disclanguage/messages_zh_cn.yml was updated by nice, and
disclanguage/messages_zh_hk.yml was added by nice.
The final 1.1.0 system does not use a root
/plugins/MailboxGUI-DiscBridge/messages.yml file for active Discord
templates.
Upgrading From 1.0.x
DiscBridge 2.0.0 retains the migration path introduced in 1.1.0 for custom Discord messages.
In 1.0.x, customized Discord templates were stored in config.yml under
messages:. In 1.1.0 or newer, they are stored in
/plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml.
Back up /plugins/MailboxGUI-DiscBridge/.
Install MailboxGUI 6.0.0 and DiscBridge 2.0.0 in matching editions. For currently available builds, use Free + Free.
Start the server.
Confirm /plugins/MailboxGUI-DiscBridge/disclanguage/messages_en.yml was created.
Confirm /plugins/MailboxGUI-DiscBridge/language/messages_zh_hk.yml and /plugins/MailboxGUI-DiscBridge/disclanguage/messages_zh_hk.yml were created.
Confirm old customized config.ymlmessages.* templates were copied into disclanguage/messages_en.yml.
Confirm the other translated messages_*.yml files were created from bundled defaults.
Confirm config.yml no longer contains the old messages: section after config sync.
Confirm no active root /plugins/MailboxGUI-DiscBridge/messages.yml file exists.
If a server used an earlier unreleased 1.1.0 test build with a root
/plugins/MailboxGUI-DiscBridge/messages.yml, DiscBridge migrates its
English templates into disclanguage/messages_en.yml, backs up the old
root file, and removes it. The root file is not part of the final active 1.1.0
message system.
Config and Language Synchronization
The config synchronizer upgrades older layouts to the 2.0.0 config-version 4 layout.
Existing custom values are preserved where possible.
The old default server-name ImagineCraft is changed to generic Minecraft Server if it was not customized.
The Discord message synchronizer adds missing disclanguage/messages_*.yml files and preserves customized templates where possible.
The in-game language synchronizer adds missing command language keys and preserves customized language values where possible.
The language synchronizer can update old default zh_cn values to the new contributed translation while preserving server-owner custom edits.
The Discord message template synchronizer can update old default zh_cn Discord message values while preserving server-owner custom edits.
MailboxGUI-DiscBridge 1.1.1 generates language/messages_zh_hk.yml and disclanguage/messages_zh_hk.yml when missing.
Backups are placed under /plugins/MailboxGUI-DiscBridge/backups/.
Update System
DiscBridge 2.0.0 uses separate Free and Premium website release feeds. Config exposes
the release, beta, or alpha update channel; update
endpoints remain built into the plugin.
/mbdiscord update confirm stages the jar for the next restart.
The staged download is validated as a newer MailboxGUI-DiscBridge jar.
Free updates use the public Free feed.
Premium updates require website credentials configured with /mbdiscord admin updatelogin set <username> <password>.
Use /mbdiscord admin updatelogin status to check credentials or /mbdiscord admin updatelogin clear to remove them.
Troubleshooting
Test DM Works, Real Mail Does Not
Run /mbdiscord admin mode; Free should report LOCAL and Premium should report NETWORK_NODE.
Confirm MailboxGUI 6.0.0 and DiscBridge 2.0.0 use matching editions.
In Premium NETWORK_NODE, make sure MailboxGUI Premium network mode and the Redis subscriber are active.
Check that the recipient has run /mbdiscord enable.
Check recipient online DMs if the recipient is online.
Check DiscordSRV linking.
Check /mbdiscord ignoreadmin and ignored player settings.
Book Letter Notifications Not Sending
Use MailboxGUI 6.0.0 with DiscBridge 2.0.0 in matching editions.
Confirm disclanguage/messages_en.yml or the selected language file contains messages.dm-book-letter.
Confirm the recipient is linked through DiscordSRV and has enabled DiscBridge notifications.
Check /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml, not a root messages.yml.
Discord DM Language Not Changing
Make sure the player ran /mbdiscord language <language>.
Use a supported code or name: en, de, es, fr, it, ja, ko, nl, pl, ru, sv, uk, zh_cn, zh_hk, zh_tw.
Check /mbdiscord status for the selected Discord message language.
Confirm the matching file exists under /plugins/MailboxGUI-DiscBridge/disclanguage/.
Test an individual DM. Player-selected languages do not affect channel notices.
Mass-Mail Channel Language Not Changing
Mass-mail channel notices always use discord-messages.default-language.
Player-selected Discord DM languages do not affect channel notices.
discord-messages:
default-language: "en"
Edit the matching /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml
file, then run /mbdiscord admin reload. Do not edit a root
messages.yml; it is not the final active message file.
COD Item-Currency Price Blank or Incomplete
Use MailboxGUI 6.0.0 with DiscBridge 2.0.0 in matching editions.
Confirm the selected/default Discord message language file uses {price} in dm-cod-package and dm-cod-item-currency-payment.
Check /plugins/MailboxGUI-DiscBridge/disclanguage/messages_*.yml, not a root messages.yml.
NETWORK_NODE Disables on Startup
Confirm both MailboxGUI and DiscBridge are Premium editions; Free/Premium mismatches disable DiscBridge.
MailboxGUI network mode is not enabled on that backend.
DiscordSRV is missing on the DiscBridge backend.
NETWORK_NODE Does Not Notify
Premium network functionality is not available in the Free editions.
Run /mbdiscord admin mode and confirm Mode: NETWORK_NODE.
Confirm the MailboxGUI hook, DiscordSRV hook, and MailboxGUI network mode are active.
Install DiscBridge and DiscordSRV on only one backend that should act as the notification node.
Check console for the NETWORK_NODE subscriber startup message.
Send real mail from another backend and verify the one DiscBridge backend receives the network delivery payload.
No Mass Mail DMs
This is normal by default. DiscBridge sends a channel notice only unless
admin-mass-mail-direct-messages.enabled is set to true.
Online Player Not Receiving DM
Default behavior disables online DMs. The player can run
/mbdiscord online on, or the server can allow online DMs globally.
Update Staged but Not Applied
Restart is required. The update command stages the jar for next restart and does not
update the running plugin immediately.
Multiple NETWORK_NODE Backends
Only one NETWORK_NODE backend is recommended. Duplicate event protection
exists, but it is not intended as multi-node clustering.
Testing Checklist
Run these commands after installation or upgrade:
/mbdiscord admin status
/mbdiscord admin mode
/mbdiscord admin reload
/mbdiscord admin testdm <player>
/mbdiscord admin testchannel
/mbdiscord language
/mbdiscord language Spanish
/mbdiscord language Español
/mbdiscord language zh_cn
/mbdiscord language zh_hk
/mbdiscord language zh_tw
/mbdiscord status
Test these deliveries:
Classic Letter DM
Book Letter DM
Package DM
COD package with Vault money
COD package with item currency
COD item-currency payment mail
Returned COD package
Money mail
Admin one-recipient mail
Admin/API mass-mail channel notice
Optional queued mass-mail DMs if enabled