Whether you're a server administrator or a player with operator permissions, understanding server commands is essential for managing a Minecraft Bedrock server effectively. This comprehensive guide covers all available commands on Bedrock Edition servers, organized by category with clear explanations of what each command does and when to use it.
Important Notes: Most commands require Operator (OP) permissions. Some commands marked with ⚠️ may require experimental features enabled or specific permissions. Command syntax can vary slightly between Minecraft versions, so always test commands in a safe environment first.
Understanding Target Selectors
Many commands use target selectors to specify which players or entities to affect:
@s- The entity executing the command (self)@p- The nearest player@a- All players@r- A random player@e- All entities
Core and Utility Commands
These fundamental commands help you navigate and communicate on your server:
/help
Displays a list of available commands or detailed help for a specific command. Perfect for when you can't remember the exact syntax.
Usage: /help or /help <command>
/list
Shows all players currently connected to your server, along with the current player count. Useful for checking who's online without opening the player list.
Usage: /list
/me <message>
Sends a roleplay-style message in chat, appearing as an action performed by the sender. For example, "/me waves" displays as "*PlayerName waves".
Usage: /me waves hello
/say <message>
Broadcasts a message to all players as if it came from the server itself. Great for making important announcements.
Usage: /say Server restart in 5 minutes!
/tell <player> <message>
Sends a private message directly to a specific player. Also accessible via /msg or /whisper. Perfect for discreet communication with players.
Usage: /tell PlayerName Welcome to the server!
/tellraw <target> <json>
Advanced command for sending formatted JSON messages with clickable text, colors, and hover events. Requires knowledge of JSON formatting but allows for rich, interactive chat messages.
/title <player> <title|subtitle|actionbar> <text>
Displays large text on a player's screen. Use "title" for big centered text, "subtitle" for smaller text below the title, or "actionbar" for text above the hotbar. Excellent for welcome messages or event announcements.
Usage: /title @a title {"text":"Welcome!"}
Player and Gamemode Commands
Control player experiences and game modes with these essential commands:
/gamemode <mode> [player]
Changes a player's game mode. Modes include survival (s or 0), creative (c or 1), adventure (a or 2), and spectator (sp or 3). If no player is specified, it affects the command sender.
Usage: /gamemode creative PlayerName or /gamemode c @a
/difficulty <peaceful|easy|normal|hard>
Sets the world difficulty, affecting mob spawning, damage, and hunger. Perfect for adjusting server challenge level.
Usage: /difficulty hard
/defaultgamemode <mode>
Sets the default game mode for new players joining the world. Useful for ensuring all new players start in survival or creative mode automatically.
Usage: /defaultgamemode survival
/spawnpoint [player] [x y z]
Sets a player's respawn location to specific coordinates. If coordinates aren't provided, uses the current location. Essential for custom spawn areas or spawn protection.
Usage: /spawnpoint PlayerName 100 64 200
/clear <player> [item] [data] [maxCount]
Removes items from a player's inventory. Specify an item to remove only that item, or leave blank to clear everything. Can also specify a maximum count to only remove a certain amount.
Usage: /clear PlayerName or /clear @a diamond
/kill [target]
Instantly kills entities or players. Useful for removing unwanted mobs, resetting players who are stuck, or clearing entities causing lag. Use carefully!
Usage: /kill @e[type=zombie] or /kill PlayerName
/effect <player> <effect> [seconds] [amplifier] [hideParticles]
Applies potion effects to players, such as speed, jump boost, invisibility, or regeneration. Set duration in seconds and amplifier (level) for the effect strength. Add "true" at the end to hide particles.
Usage: /effect @a speed 60 1 gives all players speed for 60 seconds at level 2.
/xp <amount> [player]
Adds or removes experience points or levels from players. Use positive numbers to add XP or negative to remove. Add "L" after the number for levels instead of points.
Usage: /xp 100 PlayerName or /xp 5L @a gives 5 levels to all players.
/enchant <player> <enchantment> [level]
Applies an enchantment to the item currently held by the player. Make sure the player is holding an item that can accept the enchantment (e.g., sharpness on a sword).
Usage: /enchant PlayerName sharpness 5
World and Environment Commands
Control time, weather, and world rules with these commands:
/time set <day|night|value>
Sets the in-game time. Use "day" for noon (6000), "night" for midnight (18000), or a specific tick value (0-24000).
Usage: /time set day or /time set 6000
/time add <value>
Advances the time forward by the specified number of ticks. Useful for skipping ahead without setting an exact time.
Usage: /time add 24000 advances one full day.
/weather <clear|rain|thunder> [duration]
Changes the weather conditions. Set duration in seconds to control how long the weather lasts. Useful for events or removing weather that players find annoying.
Usage: /weather clear or /weather rain 300 for 5 minutes of rain.
/gamerule <rule> <value>
One of the most powerful commands for customizing server behavior. Changes world rules like keepInventory (true/false), doDaylightCycle (true/false), mobGriefing (true/false), and many more. Use /gamerule alone to see all available rules.
Usage: /gamerule keepInventory true or /gamerule doMobSpawning false
/setworldspawn [x y z]
Sets the world spawn point where new players first appear. If coordinates aren't specified, uses the command sender's current location.
Usage: /setworldspawn 0 64 0
/seed
Displays the world seed, useful for sharing worlds with others or for seed-based challenges.
Building and Block Commands
These commands help with large-scale building projects and block manipulation:
/fill <x1 y1 z1> <x2 y2 z2> <block> [mode]
Fills a rectangular area with blocks. Modes include replace (default), destroy, hollow (creates walls only), outline (creates frame only), and keep (only replaces air). Perfect for building platforms, walls, or clearing areas.
Usage: /fill 0 64 0 10 64 10 stone creates a 10x10 stone platform.
/setblock <x y z> <block> [mode]
Places or replaces a single block at specific coordinates. Useful for precise block placement or fixing block errors.
Usage: /setblock 100 64 200 diamond_block
/clone <begin> <end> <destination> [mode]
Copies blocks from one area to another. Perfect for duplicating builds, creating templates, or backing up important structures before making changes.
Usage: /clone 0 64 0 10 74 10 100 64 100
/structure save|load|delete <name> <coords>
Saves, loads, or deletes structures that can be reused later. Excellent for creating building templates or saving important structures for easy restoration.
Entity and Mob Control
Manage entities, mobs, and player movement with these commands:
/summon <entity> [x y z] [event]
Spawns any entity or mob at specified coordinates. If coordinates aren't provided, spawns at the command sender's location. Can include events for special mob behaviors.
Usage: /summon zombie ~ ~ ~ spawns a zombie at your location.
/tp <target> <destination>
Teleports players or entities to a specific location or another entity. Essential for helping stuck players, organizing events, or quick travel.
Usage: /tp PlayerName 100 64 200 or /tp PlayerName @p
/spreadplayers <x z> <spreadDistance> <maxRange> <respectTeams> <players>
Randomly spreads players across an area. Useful for starting games, creating random spawns, or ensuring fair starting positions. Set respectTeams to true to keep teams together.
Usage: /spreadplayers 0 0 10 50 false @a
/ride <entity> mount|dismount <target>
⚠️ Allows mounting entities onto others, creating custom mob combinations. Requires experimental features.
Items and Inventory Commands
Manage player items and inventory with these commands:
/give <player> <item> [amount] [data] [components]
Gives items directly to players. Can specify amount, data values, and item components for custom items. Perfect for rewards, events, or testing.
Usage: /give PlayerName diamond 64 or /give @a golden_apple 1
/replaceitem entity|block <target> <slot> <item>
Replaces items in specific inventory slots or container blocks. Useful for setting up custom equipment or filling chests.
Scoreboard and Data Commands
Track statistics, create objectives, and manage player data:
/scoreboard objectives add <name> <criteria>
Creates a new scoreboard objective to track player statistics. Criteria can be things like "dummy", "deathCount", "playerKillCount", or custom criteria.
Usage: /scoreboard objectives add Kills playerKillCount
/scoreboard players set|add|remove <player> <objective> <value>
Modifies player scores on scoreboard objectives. Use "set" for exact values, "add" to increase, or "remove" to decrease.
Usage: /scoreboard players set PlayerName Points 100
/scoreboard objectives setdisplay <slot> <objective>
Displays scoreboard information on screen. Slots include "list" (tab menu), "sidebar" (right side), or "belowName" (below player name).
Usage: /scoreboard objectives setdisplay sidebar Kills
Server Administration Commands
Essential commands for managing your server and players:
/op <player>
Grants operator (admin) permissions to a player, allowing them to use commands. Use carefully and only for trusted players.
Usage: /op PlayerName
/deop <player>
Removes operator permissions from a player, revoking their ability to use commands.
Usage: /deop PlayerName
/kick <player> [reason]
Removes a player from the server temporarily. They can reconnect immediately. Use for temporary removal when banning isn't necessary.
Usage: /kick PlayerName Inappropriate behavior
/ban <player> [reason]
Permanently bans a player from the server. They cannot reconnect until unbanned. Use for serious rule violations.
Usage: /ban PlayerName Griefing
/ban-ip <ip>
Bans an IP address, preventing any player using that IP from connecting. Useful for blocking alt accounts or known problem players.
/pardon <player>
Unbans a previously banned player, allowing them to reconnect to the server.
Usage: /pardon PlayerName
/pardon-ip <ip>
Removes an IP address ban, allowing players from that IP to connect again.
/whitelist on|off|add|remove|list
Manages the server whitelist. Turn whitelist on to allow only whitelisted players, then use "add" to add players, "remove" to remove them, or "list" to see all whitelisted players.
Usage: /whitelist on then /whitelist add PlayerName
/save-all
Forces the server to immediately save the world and player data. Useful before making major changes or server restarts.
/stop
Gracefully shuts down the server, saving all data before stopping. Always use this instead of force-closing the server to prevent data loss.
Education, Experimental, and Special Commands
These commands are available in Education Edition or require experimental features:
/ability <player> <ability> <true|false>
⚠️ Toggles special abilities like "mayfly" (allows flying) or "worldbuilder" (allows building in any mode). Requires Education Edition or specific permissions.
/camera <player> <preset>
⚠️ Controls camera behavior and cinematic modes. Requires experimental features.
/dialogue open <npc> <player>
Opens NPC dialogue for custom interactions. Useful for creating interactive elements and quest systems.
/agent
⚠️ Controls the Code Builder agent in Education Edition, allowing programmable automation.
Debug and Information Commands
Test conditions and locate structures with these utility commands:
/testfor <entity>
Tests if specific entities exist. Primarily used in command blocks for automation and triggers.
/testforblock <x y z> <block>
Checks if a specific block exists at given coordinates. Useful for command block contraptions and automated systems.
/testforblocks <start> <end> <destination>
Compares two block regions to see if they match. Useful for checking if players have completed builds or structures correctly.
/locate <structure>
Finds the nearest structure of the specified type (like villages, strongholds, monuments) and provides coordinates. Perfect for helping players find important locations.
Usage: /locate village or /locate stronghold
/locatebiome <biome>
Finds the nearest biome of the specified type. Helpful for players looking for specific biomes for building or resource gathering.
Usage: /locatebiome plains or /locatebiome mushroom_fields
Command Execution and Logic
Advanced commands for complex automation and logic:
/execute <selector> ~ ~ ~ <command>
Runs a command as if executed by another entity at their location. Extremely powerful for creating complex command chains, conditional logic, and automated systems. The tilde (~) notation means "relative to the executing entity".
Usage: /execute @e[type=zombie] ~ ~ ~ say I'm a zombie!
/function <name>
Runs a .mcfunction file from a behavior pack, allowing you to execute multiple commands in sequence. Perfect for organizing complex command sequences.
/schedule function <name> <time>
⚠️ Runs a function after a specified delay. Useful for delayed events or timed sequences. Requires experimental features.
Tips for Using Commands Effectively
Command Blocks for Automation
Use command blocks to create automated systems that run commands repeatedly or in response to events. Combine them with redstone for complex contraptions and automated server management.
Combine Commands for Complex Logic
The /execute command combined with /scoreboard allows you to create sophisticated conditional logic. Use scoreboard objectives as variables and /execute to create if-then statements and loops.
Extend Capabilities with Behavior Packs
Behavior packs can add custom commands and extend server capabilities beyond the base command set. Explore community behavior packs to add new commands and features to your server.
Practice in Creative Mode
Before using commands on your live server, test them in a creative world or test server. Some commands can have unexpected effects, and testing helps you understand the syntax and results.
Document Your Commands
Keep a record of important commands, especially complex ones involving /execute or /scoreboard. This makes it easier to maintain and troubleshoot your server systems.
Conclusion
Mastering these commands gives you powerful tools for managing your Minecraft Bedrock server. Start with the basic commands like /gamemode, /tp, and /give, then gradually explore more advanced features like /execute and scoreboards as you become more comfortable. Remember that most commands require operator permissions, so use them responsibly and always test complex commands in a safe environment first.
For server management made even easier, consider using MC Bedrock Server Manager, which provides a graphical interface for many common server tasks and automates routine operations like backups and player management.