LuckPerms is a permissions plugin for Minecraft Java servers. A permission is a string, such as minecraft.command.ban, that controls whether a player can use one feature or command. Instead of setting permissions per player, LuckPerms lets you build groups, such as admin, and assign players to them so they inherit everything the group has.
If LuckPerms is not installed yet, get it from the LuckPerms plugin page and follow the guide on how to install a Minecraft server plugin first. Everything below assumes the plugin is already running.
Set up permissions in the first 15 minutes
- 1.Grant yourself full access. In the server console, run lp user <your username> permission set luckperms.* true. Nobody has any LuckPerms access on a fresh install, and the wildcard covers every luckperms.* permission.
- 2.Add permissions to the default group. Every player inherits from a group called default automatically, so anything set there applies to the whole server.
- 3.Create an admin group. Run /lp creategroup admin, then give it a permission, for example /lp group admin permission set minecraft.command.ban true.
- 4.Add yourself to it. Run /lp user <your username> parent add admin so you inherit everything the admin group has.
- 5.Open the web editor for anything more involved. Run /lp editor and follow the link it posts in chat or console.
LuckPerms commands that matter
Most day-to-day work runs through a short list of commands. Required arguments are in angle brackets, optional ones in square brackets.
- /lp editor opens a web interface for editing permissions, groups, and users without typing commands.
- /lp creategroup <name> creates a new, empty group.
- /lp group <group> permission set <node> <true|false> grants or denies one permission node on a group.
- /lp user <user> parent add <group> adds a user to a group so they inherit its permissions.
- /lp group <group> parent add <parent> makes one group inherit from another, so an admin group can pull from a moderator group instead of repeating every node.
- /lp group <group> meta addprefix <weight> "<prefix>" sets a group's chat prefix at a given priority weight.
- /lp verbose record <user> is the most reliable way to find which permission a command actually checks, by watching real permission checks as the player runs it.
How groups and inheritance work
Groups can inherit from other groups, not just from default. A common setup is default at the bottom, mod inheriting from default, and admin inheriting from mod. Add the chain with /lp group mod parent add default and /lp group admin parent add mod. Because inheritance is recursive, admin ends up with everything mod and default have, without those permissions being copied into the admin group itself. The same inheritance applies to prefixes and other meta, which is why weight matters: when a user has more than one prefix through inheritance, LuckPerms shows whichever one has the highest weight value.
A starter permission table
These nodes come from EssentialsX, one of the most common plugins paired with LuckPerms, and are safe defaults for a member-tier group. Set each with /lp group <group> permission set <node> true.
- essentials.fly lets a player toggle flight with /fly.
- essentials.heal lets a player heal instantly with /heal.
- essentials.gamemode lets a player switch game modes with /gamemode. Add essentials.gamemode.creative or essentials.gamemode.survival to limit which modes a group can switch to.
- essentials.kit lets a player claim a kit with /kit.
- essentials.home and essentials.sethome let a player set and teleport to a personal home.
- essentials.tpa lets a player send a teleport request with /tpa.
Why your prefix isn't showing in chat
LuckPerms stores prefixes and suffixes as permission data and lets you manage them, but it does not touch chat formatting itself. Displaying a prefix in chat needs a separate plugin that reads that data through Vault.
If EssentialsX is already installed, its EssentialsX Chat component can apply the format, using the {PREFIX} and {DISPLAYNAME} tokens in its chat configuration. Vault has to be installed too, since it is what lets EssentialsX Chat, and most other chat and tab plugins, read prefix data from a permissions plugin like LuckPerms. If EssentialsX is not already on the server, a dedicated formatter such as VaultChatFormatter reads the same LuckPerms data with less setup.
Frequently asked questions
How do I give myself all permissions in LuckPerms?
Run lp user <your username> permission set luckperms.* true from the server console. The wildcard grants every luckperms.* permission, which is enough to run every LuckPerms command. Do this before anything else on a fresh install, since nobody has LuckPerms access by default.
What is the difference between parent set and parent add?
parent add appends a group without touching any groups a user or group already has. parent set clears every parent group in the given context first, then applies the one specified. Use add when building up a stack of groups, and set when you want exactly one parent group to apply.
Why doesn't my LuckPerms prefix show in chat?
LuckPerms manages prefix data but does not format chat itself. You need a separate plugin, such as EssentialsX Chat or VaultChatFormatter, connected through Vault, to read that data and print it in chat messages.
Can I edit LuckPerms without typing commands?
Yes. Run /lp editor to generate a link to LuckPerms's web editor, where you can add, remove, and reorder permissions, groups, and prefixes through a browser interface. Changes need a command, posted automatically after you save, to apply them on the server.
Does LuckPerms work across a network of servers?
Yes, when every backend server and the proxy share the same storage backend. Install the matching BungeeCord or Velocity build on the proxy, point every server at that storage, and group and prefix changes apply network-wide instead of per server.



