Minecraft Command Generator
Build /give, /summon and /tellraw commands for Java 1.21+ — searchable pickers, live output, copy & paste.
@p nearest player · @a everyone · @s yourself · @r random · or a player name.
Vanilla max shown for reference — commands accept levels up to 255.
Examples: ~ ~1 ~ (one block above you) or 100 64 -230.
Approximates Minecraft chat rendering — hover a segment to see its hover text.
How it works
- /give — pick an item (or type any item id), then add a custom name, lore lines, enchantments and Unbreakable. Output uses the modern item component syntax introduced in 1.20.5, e.g.
minecraft:custom_nameandminecraft:enchantmentsin square brackets after the item id. - /summon — pick a mob, set a position (
~ ~ ~is where you stand), and toggle common NBT: NoAI freezes the mob in place, Silent mutes it, Invulnerable blocks all damage (except the void and creative players), Glowing gives it an outline, "Never despawn" setsPersistenceRequired, and Baby appears for mobs that have a baby form. - /tellraw — build the message from segments. Each segment gets its own color (16 Minecraft colors or any hex), bold/italic/underline/strikethrough/obfuscated styling, an optional click action (open a URL, run or suggest a command) and hover text. The preview mimics the in-game chat box.
- Syntax toggle — 1.21.5 renamed tellraw's
clickEvent/hoverEventtoclick_event/hover_eventand dropped thelevelswrapper from the enchantments component. Pick the mode that matches your server; everything else updates automatically. - Everything runs in your browser — commands are generated live as you type, with a character count so you know whether it fits in chat (256) or needs a command block (32,500).
About this tool
Since Java 1.20.5, custom items use data components instead of the old {display:{Name:…}} NBT — most command generators on the web still produce the legacy format, which simply fails on modern servers. This generator targets current Minecraft: component-based /give, NBT /summon, and JSON-text /tellraw, with correct escaping for quotes and special characters in names, lore and messages.
Custom names and lore automatically include italic:false so your text renders upright instead of the default anvil-style italics. Multi-segment tellraw output is prefixed with an empty "" element so the first segment's formatting doesn't bleed into the rest of the message.
FAQ
Which Minecraft versions do these commands work on?
Java Edition 1.20.5 and newer. The generator has two syntax modes: 1.20.5–1.21.4 (item components with the levels wrapper, tellraw clickEvent/hoverEvent) and 1.21.5+ (flattened enchantments and the renamed click_event/hover_event keys). Java 1.20.4 and older used the legacy NBT syntax (/give with display:{Name:…}), which is not compatible, and Bedrock Edition uses entirely different commands.
Why is my command red or cut off when I paste it in chat?
Chat has a 256-character limit including the leading slash. Longer commands must be pasted into a command block (limit 32,500 characters). If the command fits but still errors, make sure the syntax mode matches your server's Minecraft version.
Can enchantments go above the vanilla maximum level?
Yes — commands accept levels up to 255, so Sharpness 255 or Looting 100 are valid. The picker shows each enchantment's vanilla max for reference, but you can type any level from 1 to 255. Note that some effects stop scaling meaningfully at high levels.
Why does the generator add italic:false to custom names?
Renamed items display in italics by default, just like anvil renames. Adding "italic":false to the custom_name and lore components makes the text render upright, which is what most people expect for custom items.
Why does /tellraw start with an empty "" element?
In a JSON text array, every element after the first inherits the first element's formatting. Starting the array with an empty unformatted "" segment stops your first segment's color or bold from leaking into the rest of the message.