
Every Minecraft server keeps a file called ops.json. It is the list of operators, the players who have admin powers. If you have ever wondered where op status is actually stored, or you need to fix a broken operator list, this is the file you are looking for.
What ops.json is
ops.json is a JSON file in your server root folder, next to server.properties. It stores every operator on the server along with their permission level. When you run /op PlayerName in game, the server writes that player into ops.json. When you run /deop, it removes them.
A typical entry looks like this:
[
{
"uuid": "069a79f4-44e9-4726-a5be-fca90e38aaf5",
"name": "Notch",
"level": 4,
"bypassesPlayerLimit": false
}
]
What each field means
uuid: the player's unique ID. Minecraft matches operators by UUID, not name, so a name change does not remove op.name: the player's username, kept for readability.level: the permission level from 1 to 4. Level 4 is full admin.bypassesPlayerLimit: if true, this operator can join even when the server is full.
The four permission levels
- Level 1: can bypass spawn protection.
- Level 2: can use most single-player cheat commands, command blocks, and
/gamemode. - Level 3: can use multiplayer management commands like
/ban,/kick, and/op. - Level 4: full access, including
/stop. This is the default for/op.
You can set the default level for /op with op-permission-level in server.properties.
How to edit ops.json safely
Most of the time you should not edit ops.json by hand. Use /op and /deop in game or console instead, because the server keeps the file formatted correctly. If you do need to edit it directly:
- Stop the server. Editing while it runs can be overwritten.
- Open
ops.jsonin your panel file editor. - Keep valid JSON. A missing comma or bracket will break the whole operator list.
- Save and start the server.
Common problems
- Op does not work after editing: the JSON is malformed. Validate it, or delete the file and re-op players in console.
- Player still has op after deop: another entry with their UUID exists, or a permissions plugin like LuckPerms is granting access separately.
- Op resets on restart: the server cannot write the file due to permissions, or you are editing a copy while the server holds the real one.
ops.json vs permissions plugins
On Paper or Spigot servers with LuckPerms, most admin access is handled by permission groups, not ops.json. Operators still work, but for a public server it is safer to give staff specific permissions through LuckPerms and keep the operator list very small.
The short answer
ops.json is the operator list for your Minecraft server, storing each admin by UUID with a permission level from 1 to 4. Manage it with /op and /deop rather than editing by hand, and use a permissions plugin for finer control.
Space-Node Minecraft plans give you full file access to ops.json and one-click LuckPerms installs from the panel. See the plans on our Minecraft hosting page.