whitelist.json and ops.json hold name/UUID pairs. On an online-mode=false server the UUID is deterministic (MD5 of “OfflinePlayer:name”) and is computed here offline. On an online server the UUID comes from Mojang: this tool makes no network call, so you must provide it.
How to use the tool
Choose the file to produce: whitelist.json or ops.json.
Enter one player per line: “Name” (offline UUID computed if the option is on) or “Name UUID”.
For ops.json, set the operator level (1 to 4) and fix any listed errors.
Stop the server, replace the file in the server root, then restart (or use /whitelist reload).
How to get a player's official UUID
The simplest is to let the server do it: with online-mode=true, the commands /whitelist add Name and /op Name write the official UUID into the files. Otherwise, take the UUID from the server logs (the “UUID of player … is …” line at login) or from any UUID lookup service of your choice, then paste it after the name. Official UUIDs cannot be computed: they are assigned by Mojang.
[
{ "uuid": "069a79f4-44e9-4726-a5be-fca90e38aaf5", "name": "Notch" }
]Frequently asked questions
- Why does the offline UUID differ from the official UUID?
- With online-mode=false the server derives the UUID from the name alone. Worlds and inventories are tied to that UUID: switching online-mode changes the player's identity, hence their data.
- What does the operator level mean?
- From 1 to 4, it sets the allowed commands (4 = full rights, including /stop). The server uses op-permission-level (4 by default) for /op; here you set the level player by player. bypassesPlayerLimit lets the player join even when the server is full.

