Reference
Config
Every setting of the MC-Sync plugin and mod, with its default and what it does.
The file is created on the server's first start. Plugin and mod share the same settings in two notations: api: → token: in YAML is api.token= in the properties file. Two settings exist on Spigot, Paper and Folia only.
| Server | File |
|---|---|
| Spigot, Paper, Folia | plugins/mc-sync/config.yml |
| Fabric, Quilt, Forge, NeoForge | config/mc-sync.properties |
# plugins/mc-sync/config.yml
commands:
mode: allow
allow: ["say", "lp user * parent add"]# config/mc-sync.properties
commands.mode=allow
commands.allow=say,lp user * parent addLists go in square brackets in YAML and are comma separated in the properties file. In YAML, put "off" and "on" in quotes.
Reload or restart
/mcsync reload reads the file again. These apply right away:
commands.mode,commands.allowandcommands.consoleFallbackperformance.report,error.reportanddev.mode
These need a restart:
api.tokenqueue.*,update.mode,console.live,http.mode,http.allowandflows.modeflowCommands.enabled. After a reload it only applies once the commands change in the dashboard.
If an older file is missing a setting, MC-Sync adds it with its default on start and on /mcsync reload. Existing values stay as they are, and the old file is kept next to it as config.yml.bak-… or mc-sync.properties.bak-….
api
| Key | Default | Effect |
|---|---|---|
api.token | YOUR_API_TOKEN | The token from the dashboard or from /server add. The placeholder counts as empty. |
On Fabric, Quilt, Forge and NeoForge the mod reads the token from the MC_SYNC_TOKEN environment variable when the file has none. How to get a token is under Chat sync.
queue
While Discord can't be reached, chat, joins and deaths wait on disk: in plugins/mc-sync/queue/ or config/mc-sync-queue/. They survive a restart and go out in their original order afterwards.
| Key | Default | Effect |
|---|---|---|
queue.maxAgeMinutes | 60 | How long an event waits, in minutes. 1 to 1440. Older ones are dropped. |
queue.maxEvents | 10000 | How many events wait at most. Beyond that the oldest drop out. At most 100000. |
queue.maxSizeMb | 10 | How much disk space the waiting events take, in MB. Beyond that the oldest drop out. At most 1024. |
A value above the limit counts as the limit. 0, an empty value or text counts as the default.
update
| Key | Default | Effect |
|---|---|---|
update.mode | notify | notify reports a new version in the server log and in /mcsync status. off turns the check off. |
Only versions for the server's Minecraft version are considered. MC-Sync never downloads anything itself; you replace the file by hand.
commands
Which commands the Minecraft server accepts from Discord, the dashboard and flows. Who may send commands from Discord is set there, see Commands from Discord.
| Key | Default | Effect |
|---|---|---|
commands.mode | whitelist | off: no commands. whitelist: only whitelist add, whitelist remove and whitelist list. allow: the whitelist plus everything in commands.allow. all: every command. |
commands.allow | empty | Extra commands for allow. An entry matches the start of the command, word by word. * stands for exactly one word. |
commands.consoleFallback | false | Spigot, Paper, Folia only. If a plugin command rejects the console MC-Sync uses to capture output, true runs it once more on the real console, without output. It may then run twice. |
With lp user * parent add, lp user Notch parent add vip works, lp user Notch parent remove vip doesn't.
console
| Key | Default | Effect |
|---|---|---|
console.live | true | Admins of the connected Discord server can watch the console live in the dashboard, see Console. It can contain player IP addresses. |
performance
| Key | Default | Effect |
|---|---|---|
performance.report | true | Sends TPS, MSPT, memory, chunks, entities and uptime once a minute. This feeds the graph in the dashboard and the low TPS notice. |
error
| Key | Default | Effect |
|---|---|---|
error.report | true | Reports failures in MC-Sync itself to its developers: the error, where it happened, loader and versions. Network and config problems are never reported. Player names, chat and IP addresses aren't sent. |
dev
| Key | Default | Effect |
|---|---|---|
dev.mode | false | Writes every request to the bot to the server log in detail. With false, only errors. |
http
Outgoing HTTPS requests from flows, with the "HTTP request via the Minecraft server" block.
| Key | Default | Effect |
|---|---|---|
http.mode | off | off: no requests. allow: only to the hosts in http.allow. |
http.allow | empty | Allowed hosts, such as api.example.com. A host covers its subdomains too. |
Private and local addresses are always blocked, even when a host from http.allow points to one. Only https:// is allowed.
flowCommands
| Key | Default | Effect |
|---|---|---|
flowCommands.enabled | true | Spigot, Paper, Folia only. Flows may create their own commands on the server. What those commands run is still checked against commands.mode. |
If the name is already taken, for example online, you reach the command as /mcsync:online.
flows
| Key | Default | Effect |
|---|---|---|
flows.mode | off | off: flows run at the bot. on: flows that only concern this server run on the server itself. |
commands.mode and http.mode still apply. Which flows qualify is described under Flows.