/embed add type: Diagram ip: play.example.eu channel: #server-info language: English
/embed add type: Connection server: Survival
/embed add type: Server performance server: Survival
/embed list
/embed remove embed: #server-info — status — play.example.eu
Notes
Status: reachability, MOTD, version and player count. Whitelist: whitelisted players (requires the plugin). Diagram: player count over time. Player stats: stats from the linked chat sync. Connection: chat sync state, including when it was last seen. Server performance: TPS, tick duration and memory as measured by the plugin.
server picks a server registered with /server and fills in address, edition and chat sync. For unregistered servers, use ip.
Connection and Server performance only work with a server from /server that has a connection. Server performance also needs MC-Sync 2.1.0 or newer with performance.report switched on.
Without channel, the embed is posted in the current channel. The bot needs permission to send and edit messages there.
language only applies to this embed. Defaults to your language from /language.
/embed remove only stops the updates. The message stays and has to be deleted manually if you want it gone.
Time range: 24 hours, 7 days or 30 days. Default is 24 hours.
The chart shows what has been recorded for that address. The first lookup of a new server starts the recording, so there's no history yet.
The dashboard shows the same history under “Statistics”, plus the peak and uptime percentage.
Without ip, the server from /default-ip is used. That only works on a Discord server.
Works in DMs too
Syntax
/image ip: <address> [type: <Server list entry|MOTD only|Icon only>]
Examples
/image ip: hypixel.net
/image ip: hypixel.net type: MOTD only
/image ip: play.example.eu type: Icon only
Notes
Without type you get the whole server list entry: icon, name, player count and MOTD, as it looks in Minecraft.
The MOTD is rendered like in game, including colour codes and formatting.
The server has to be online. /image always needs an address. The default from /default-ip doesn't apply here.
Minecraft integrationConnect Discord to your Minecraft server
Administrators only
Discord servers only
Syntax
/setup
Examples
/setup
Notes
First pick what you want to set up: chat sync, a live embed, a whitelist channel, a status voice channel, the ping role and log channels for notices, the default server address, or an overview of your current setup.
For chat sync you get a command with a code for the server console. As long as the server has never reported in, there's also a button “Show token (manual)” below it.
Each step is one question with a select menu. No channel IDs needed, and the order is up to you.
The overview shows what is set up on this Discord server. Handy for checking whether something was saved.
You can also change the same settings in the dashboard at mc-sync.eu/dashboard.
add with channel connects the plugin right away. connect does the same for a server that's already on the list. Both first ask you to accept the terms of service, then show the command /mcsync connect with a code, visible only to you. With method: token you get the token instead.
Run the command in the console of your Minecraft server. The code is valid for 15 minutes and only once, and the plugin then writes the token into its config itself. Otherwise put the token under api.token. Treat it like a password.
token issues new access, again by code or with method: token. With a code, the old token keeps working until the code is redeemed. A new token stops the old one immediately. In the dashboard you can also renew it with a grace period.
chat without any switches shows the current chat settings. What the bot posts by itself, like server start, stop or outages, is set with /notices.
address and channel are optional. Without an address the server can't be pinged from outside. Without a connection, the server works without the plugin and shows whatever a ping returns.
clear removes the address or the edition without deleting the server. disconnect only removes the connection, remove deletes the server together with its connection.
In /embed, /whitelist-channel and /notices you pick a registered server instead of typing the address.
require-link: True in chat only lets players with a linked account onto the server. Everyone else is turned away at login and gets a code for /link code.
event-images posts deaths and advancements as an image instead of a line, with design: toast, card, scene or minimal per event. Without event it shows the settings with two buttons for a preview with your skin.
discord-command sets what players get with /discord in game. Without invite-url the bot creates an invite for the chat channel itself, which needs “Create Invite” there.
Servers and their connections are now managed in one place, under /server. The subcommands here no longer change anything, they only tell you what replaced them.
add → /server add with channel, or /server connect · list → /server list · settings → /server chat · token → /server token · remove → /server disconnect or /server remove · guide → /server guide
The command is visible to everyone because Discord can only set permissions per command, not per subcommand. Use permission to control who can do what.
run checks two things: whether your role is allowed to run the command (Discord) and whether your server allows it (commands.mode in config.yml).
Enter commands without the slash: whitelist add Notch instead of /whitelist add Notch.
Only administrators can use permission add, remove and list.
Without server, the connection of the current channel is used, otherwise the only one on the Discord server. If there are several, the bot lists them so you can pick one with server.
Every run, including rejected attempts, is logged in the command log channel, which you set with /notices channel purpose: commands.
kategorie: playtime, sessions, kills (player kills), mobkills or deaths. Without it, playtime is used.
zeitraum: 7d, 30d or all, default 7d. Playtime and sessions per period come from the sessions MC-Sync records since the plugin update.
Kills, mob kills and deaths only exist as all-time totals from the server's statistics files. With 7d or 30d the bot shows the total and says so.
Without server, the server of the current channel is used, otherwise the only one on the Discord server. Everyone in the channel sees the reply.
Discord servers only
Syntax
/player name: <name>
/player name: <name> server: <server>
Examples
/player name: Notch
/player name: Notch server: Survival
Notes
Shows head and figure, whether the player is online or when they were last seen, playtime, deaths, kills, their first visit and, if they're linked, their Discord account on this Discord server.
Below are the buttons Statistics and Advancements, from the player file and also for players who aren't online. Inventory and Ender chest need the dashboard permission “View inventories”: live while the player is online, otherwise the saved state. Only you see these.
Without server, the server of the current channel is used, otherwise the only one on the Discord server. Everyone in the channel sees the reply.
Every name is checked with Mojang first. For an invalid name the bot replies briefly and adds nothing.
mode sets what happens with valid names: add them to the whitelist through the plugin (default) or only verify them if you'd rather whitelist manually.
applications: True puts an Apply button in the channel instead of taking bare names. Players fill in a form, and a moderator approves or denies each application.
server sets which registered server (/server add) the channel is for. Leave it empty if you only have one.
Without role, anyone in the channel can submit a name. You can limit this to up to three roles.
Writing -Name in the channel takes that name off the whitelist again. That works for whoever added it and for server managers. If a member leaves the Discord server, the names they added are removed too.
/default-ip set ip: play.example.eu edition: Bedrock
/default-ip show
Notes
Applies to the whole Discord server, not per user.
Used by /status and /diagram when no address is given.
You can also set it in the dashboard under “Servers”, where you can pick the address straight from your server list.
Discord servers only
Syntax
/emoji-pack [version:]
Examples
/emoji-pack
/emoji-pack version: 1.20.4
/emoji-pack version: 1.8.9
Notes
Works with every version from 1.6.1 on. Pick the version you play on and the pack uses the matching format.
For messages from Discord to show the emojis as images, turn on “Emojis as images” in the dashboard: open the server, then “Connection & chat” → “Chat format”.
Animated emojis move from Minecraft 1.21.9 on and are still images before that. Players without the pack still see :name: from Minecraft 1.19.4 on. The pack is built fresh on every use and not stored.
Discord servers only
Syntax
/link start
/link code code: <code>
/link show
/link remove
Examples
/link start
/link code code: H7K2QW
/link show
Notes
start gives you a code. Type !link <code> in the Minecraft chat to finish linking.
code redeems the code the Minecraft server shows at login when only linked accounts may play there. After that you can join right away.
The code is valid for 10 minutes and is never relayed to Discord, not even on a failed attempt.
Required for /role-sync, for /profile without a name and for real @mentions from the game chat.
Links are per Discord server. You need to link separately on each one.
Without server, a setting is the default for all servers. With server, it only applies to that one, and whatever a server doesn't set itself it inherits from the default. reset: True removes a server's own setting again.
The notices: server-start, server-stop, connection (lost and restored), tps, delivery (undelivered messages), console, rank-role-blocked, token-leaked and weekly-recap. token-leaked can't be turned off.
Out of the box everything is on except tps. Once switched on, tps warns when the server stays below the threshold (default 15) for more than five minutes.
A lost connection is only reported after 20 minutes without contact. By default it pings the role from ping-role, and so does a rank role the bot can't assign. delivery and console never ping.
channel sets where each kind of message goes: events (joins, deaths, advancements), notices, reports (like the weekly recap), console and commands (every /server-command run, including rejected ones). Without a channel, events, notices and reports go to the server's chat channel, and console and commands aren't posted at all.
The chat itself, and which events show up in it, is set with /server chat. show lists what currently applies and marks what is set at that level.
Everything from /alerts is now under /notices, together with the notice switches that used to be in the chat settings. The subcommands here no longer change anything, they only tell you what replaced them.
role → /notices ping-role · audit-channel → /notices channel purpose: commands · console-channel → /notices channel purpose: console · notifications → /notices set · show → /notices show
Each person has a budget for questions that resets every day. Below each answer the bot shows how much is left.
Questions can be up to 300 characters long, or 600 after voting with /vote. A vote also tops up your budget.
If the bot asks you something back, the possible answers appear as buttons below the message.
Answers can be wrong. For version-specific details, check the wiki.
Works in DMs too
Syntax
/minecraft-info info-to: <topic>
Examples
/minecraft-info info-to: Java Edition 1.21.4
/minecraft-info info-to: Redstone
Notes
Data comes from a copy of the Minecraft wiki that is updated weekly. Matching topics are suggested as you type.
Works in DMs too
Syntax
/mc loot source: <loot table>
/mc drops item: <item>
/mc trades profession: <profession>
/mc structure name: <structure>
/mc potion name: <potion>
/mc mob name: <mob>
Examples
/mc loot source: chests/village/village_armorer
/mc drops item: ender_pearl
/mc trades profession: librarian
/mc structure name: igloo/top
/mc potion name: strong_swiftness
/mc mob name: creeper
Notes
Every field suggests matching entries as you type. Pick one from the list, since the IDs are hard to type correctly.
loot shows what a mob, block or chest drops, with the chance of each entry. drops works the other way round: which loot tables drop an item.
trades lists what a villager profession offers per level. structure shows size, main materials and a picture, potion the effects and brewing steps, mob health, attack damage, XP, hitbox and where it spawns.
The data comes from mc-api, which reads it from the Minecraft game files. Long tables are shortened, and the reply says how many lines are shown.
The reply is visible to everyone in the channel.
Works in DMs too
Syntax
/skin username: <name>
/skin username: <name> type: <render>
Examples
/skin username: Notch
/skin username: Notch type: isometric
Notes
type sets the render: full (default), isometric, bust, face, head, body, avatar or skin, plus the poses mc-api offers. All of them are suggested as you type.
Only works with Java names. Bedrock accounts have no Mojang skin.
Discord servers only
Syntax
/profile
/profile user: <@member>
/profile player: <name|UUID>
Examples
/profile
/profile user: @Steve
/profile player: Notch
Notes
Without options it shows your own account, linked with /link start. user shows the linked account of another member of this Discord server, player any Java name or UUID, no link needed.
You get the UUID, a 3D render, the name history, capes and how rare they are.
The name history is what mc-api has observed itself since the account was first looked up. Mojang stopped publishing name histories in 2022, so a single name doesn't mean the player was never renamed.
Bedrock accounts have no Mojang profile, so there's nothing to show for them.