GroupeZ Docs
Configurations

Commands & Permissions

All zMenu commands and permissions

This page lists all available commands and permissions in zMenu.

Main Command

The main command is /zm (alias: /zmenu).

Base Permission: zmenu.use

Command List

General Commands

CommandPermissionDescription
/zmzmenu.useDisplay the help menu
/zm versionzmenu.versionDisplay plugin version information
/zm listzmenu.listList all loaded inventories
/zm inventorieszmenu.inventoriesList all loaded inventories (alias)
/zm documentationzmenu.documentationView documentation links
/zm descriptionzmenu.descriptionDisplay plugin description
/zm addonszmenu.addonsList official addons
/zm contributorszmenu.contributorsShow plugin contributors
/zm websitezmenu.websiteOpen the plugin website link
/zm create <file name> <inventory size> <inventory name>zmenu.createCreate a new inventory file
/zm editorzmenu.editorSend a link to the online inventory editor

Inventory Commands

CommandPermissionDescription
/zm open <inventory>zmenu.openOpen an inventory for yourself
/zm open <inventory> <player>zmenu.openOpen an inventory for another player
/zm open <inventory> <player> <args...>zmenu.openOpen inventory with arguments
/zm openMainMenu [<player>] [<display message>]zmenu.open.main.menuOpen the main menu with optional message

Examples:

/zm open shop
/zm open shop Notch
/zm open shop Notch "Welcome to the shop!"

Reload Commands

CommandPermissionDescription
/zm reloadzmenu.reloadReload all configurations
/zm reload configzmenu.reloadReload config.yml and messages only
/zm reload inventoryzmenu.reloadReload all inventories
/zm reload inventory <name>zmenu.reloadReload a specific inventory
/zm reload commandzmenu.reloadReload all commands
/zm reload command <name>zmenu.reloadReload a specific command
/zm reload dialogzmenu.reload.dialogReload all dialog files

Examples:

/zm reload
/zm reload inventory shop
/zm reload command warp

Item Commands

CommandPermissionDescription
/zm giveitem <inventory> <player>zmenu.give.itemGive a clickable item to player
/zm giveopenitem <inventory> <player>zmenu.give.open.itemGive menu-opening item to player
/zm save <name>zmenu.saveSave held item as inventory

Player Data Commands

CommandPermissionDescription
/zm players add <player> <key> <value>zmenu.players.addAdd a number to a player data value
/zm players set <player> <key> <value>zmenu.players.setSet a player data value
/zm players get <player> <key>zmenu.players.getGet a player data value
/zm players subtract <player> <key> <number>zmenu.players.subtractSubtract a number from a player data value
/zm players remove <player> <key>zmenu.players.removeRemove a player data key
/zm players removeall <key>zmenu.players.remove.allRemove key from all players
/zm players clearplayer <player>zmenu.players.clear.playerClear all data for one player
/zm players clearallzmenu.players.clear.allClear all data for all players
/zm players keys <player>zmenu.players.keysList all keys for a player
/zm players convertzmenu.players.convertConvert JSON data to SQL

Examples:

/zm players set Notch coins 100
/zm players add Notch coins 50
/zm players subtract Notch coins 10
/zm players get Notch coins
/zm players keys Notch
/zm players clearplayer Notch

Dialog Commands

CommandPermissionDescription
/zm dialog open <dialog>zmenu.dialogOpen a dialog for yourself
/zm dialog open <dialog> <player>zmenu.dialogOpen a dialog for a player
/zm dialog open config <dialog>zmenu.open.dialog.configOpen a dialog in config/debug mode

Bedrock Commands

CommandPermissionDescription
/zm bedrock open <name> [player] [display message]zmenu.open.bedrockOpen a Bedrock form
/zm bedrock reloadzmenu.reload.bedrockReload all Bedrock form files

Live Sync Commands

These commands connect your server to the Minecraft Inventory Builder website for instant hot-reload of inventories.

CommandPermissionDescription
/zm loginzmenu.loginStart device-authorization flow to link server to the website
/zm login <token>zmenu.loginLink server using a token (legacy)
/zm connectzmenu.connectOpen the live sync WebSocket connection
/zm disconnectzmenu.disconnectClose the live sync connection
/zm unlinkzmenu.unlinkForce-detach server from the website and clear credentials
/zm download <url> [force]zmenu.downloadDownload an inventory from a URL (requires enable-download-command: true in config)

Live sync workflow:

/zm login          # Approve the code shown on the website
/zm connect        # Open the WebSocket link
# Now "Sync to Server" on the web builder reloads inventory live
/zm disconnect     # Close the connection when done

Utility Commands

CommandPermissionDescription
/zm testdupezmenu.dupeTest the anti-dupe system
/zm dumplogzmenu.dumplogExport debug logs

Conversion Commands

Migrating from DeluxeMenus? Convert all your menus into zMenu inventories in one command. See Migrate from DeluxeMenus for everything that is converted.

CommandPermissionDescription
/zm convert deluxemenuszmenu.convertConvert every menu of plugins/DeluxeMenus/gui_menus/ into a zMenu inventory
/zm convert deluxemenus <menu>zmenu.convertConvert a single DeluxeMenus menu (file name, with or without .yml)
/zm convert dm [menu]zmenu.convertAlias of /zm convert deluxemenus

Permission List

Core Permissions

PermissionDescriptionDefault
zmenu.useAccess to basic commandstrue
zmenu.openOpen inventoriesop
zmenu.open.main.menuOpen the main menuop
zmenu.open.bypassBypass inventory open requirementsop
zmenu.reloadReload configurationsop
zmenu.reload.dialogReload dialog filesop
zmenu.createCreate new inventoriesop
zmenu.editorAccess inventory editorop
zmenu.inventoriesList all loaded inventoriesop
zmenu.descriptionView plugin descriptionop
zmenu.websiteOpen the plugin website linkop

Item Permissions

PermissionDescriptionDefault
zmenu.give.itemGive clickable itemsop
zmenu.give.open.itemGive menu-opening itemsop
zmenu.saveSave items as inventoriesop

Player Data Permissions

Each player data sub-command has its own permission node (split in 1.1.1.6):

PermissionDescriptionDefault
zmenu.players.addAdd to player data valueop
zmenu.players.setSet player data valueop
zmenu.players.getGet player data valueop
zmenu.players.subtractSubtract from player data valueop
zmenu.players.removeRemove a player data keyop
zmenu.players.remove.allRemove a key from all playersop
zmenu.players.clear.playerClear all data for one playerop
zmenu.players.clear.allClear all data for all playersop
zmenu.players.keysList all keys for a playerop
zmenu.players.convertConvert JSON data to SQLop

Dialog Permissions

PermissionDescriptionDefault
zmenu.dialogOpen dialogsop
zmenu.open.dialog.configOpen dialog in config/debug modeop

Bedrock Permissions

PermissionDescriptionDefault
zmenu.open.bedrockOpen Bedrock formsop
zmenu.reload.bedrockReload Bedrock form filesop

Live Sync Permissions

PermissionDescriptionDefault
zmenu.loginLink server to the Inventory Builder websiteop
zmenu.connectOpen live sync WebSocket connectionop
zmenu.disconnectClose live sync connectionop
zmenu.unlinkForce-detach server from websiteop
zmenu.downloadDownload inventory from a URLop

Utility Permissions

PermissionDescriptionDefault
zmenu.convertConvert DeluxeMenus menusop
zmenu.dupeTest anti-dupe systemop
zmenu.documentationView documentationop
zmenu.dumplogExport debug logsop
zmenu.paper.warningReceive the "zMenu requires Paper" warning on join, on a server that is not Paperop

Custom Command Permissions

When you create custom commands in commands/commands.yml, you can define custom permissions:

commands:
  shop:
    command: shop
    inventory: shop_menu
    permission: myserver.shop
    aliases:
      - store
      - market

Players will need the myserver.shop permission to use /shop.

Inventory-Specific Permissions

You can require specific permissions to open inventories using view requirements:

# In your inventory file
view-requirement:
  requirements:
    - type: permission
      permission: "myserver.vip.menu"
      deny:
        - type: message
          messages:
            - "&cYou need VIP to access this menu!"

Admin Permission

For server administrators, you can grant all zMenu permissions with:

zmenu.*

This grants access to all zMenu commands.

LuckPerms Examples

Grant basic usage:

/lp user <player> permission set zmenu.use true

Grant all admin permissions:

/lp group admin permission set zmenu.* true

Grant specific inventory access:

/lp group vip permission set myserver.vip.menu true

Permission Plugins

zMenu works with any permission plugin that supports Bukkit permissions:

  • LuckPerms (Recommended)
  • PermissionsEx
  • GroupManager
  • UltraPermissions
  • And many more

Next Steps

On this page

GroupeZ MCP

Documentation in your AI

MCP lets your AI search GroupeZ documentation and read current examples to help you configure your plugins.

Read-only · No documentation API key needed

1. Copy the server URL

Transport: HTTP (Streamable HTTP). Authentication: none. Your tool uses its own model and subscription limits.

  1. Open Plugins in ChatGPT on the web, then + → Add custom MCP server.
  2. Name it ‘GroupeZ Documentation’, paste the URL above and choose ‘No authentication’. Create and install the plugin.
  3. In a conversation, type @ and select the plugin before asking. If needed, enable search, get_page and list_pages in its settings.
Official setup guide

3. Ask a question

Use GroupeZ MCP to help me create a zMenu inventory. Search relevant pages, read the examples and cite your sources.
Other clients and troubleshooting

For clients using mcpServers, adapt this example to their format:

{
  "mcpServers": {
    "groupez-docs": {
      "url": ""
    }
  }
}

Available tools are search, get_page and list_pages. Refresh the connector’s tools after updates. If your AI cannot access them, check that the connector is enabled in the conversation and your account allows custom MCP servers. Opening the URL in a browser is not an MCP test.