Account Linking

How /link works, Microsoft OAuth, nickname sync, onboarding, and auto-unlink.

How linking works

Everyone

Members link their Minecraft account to Discord using the /link command.

  1. The user runs /link in your Discord server
  2. They receive a button that opens in their browser
  3. They sign in with Discord as the same account that ran /link (if the browser is signed in as someone else, Switch account fixes it)
  4. They sign in with the Microsoft account that owns their Minecraft Java Edition
  5. Madsi verifies their Minecraft profile and creates the link

Once linked, the user is automatically whitelisted (if whitelist rules are configured) and their Discord nickname can be synced.

Unlinking & relinking

Everyone

/unlink: Removes the link between Discord and Minecraft accounts. Depending on server settings, the user's nickname may revert and they may be removed from the whitelist.

/relink: Starts a fresh Microsoft sign-in so the user can link a different Minecraft account. The current link stays until that sign-in completes, then the new account replaces it.

Nickname sync

Admin

When a user links their account, their Discord nickname is automatically updated based on a format template you configure.

Available variables:

  • {player_name}: the player's Minecraft username
  • {discord_name}: their original Discord display name

Example: {player_name} [{discord_name}] would show as Steve john123. A format saved with the old names, {mcusername} and {discordname}, keeps working.

The bot cannot rename the server owner or users with roles higher than the bot's role. This is a Discord limitation.

Nickname revert on unlink

Admin

When enabled (default), if a user unlinks their account, their Discord nickname is reset to their original display name. If disabled, the nickname stays as-is after unlinking.

Onboarding messages

Admin

When a player links their account, Madsi sends them a welcome message by DM. If their DMs are closed, it is skipped.

Edit its text as the linking onboarding message on the Messages page. It can use {player_name} for the Minecraft name and {discord_name} for their Discord display name.

Per-server profiles

Everyone

Linked profiles are scoped to the Discord server where the account was linked. There is no public or cross-server profile, members of one server can't see profiles or stats from another, and the same person can link a different Minecraft account on each server they're in.