Summon Villagers with Custom Trades Using Command Blocks
Want a villager that trades exactly what you want? You can summon one with custom trades using just a command block. This guide shows you how to do it in Minecraft Java Edition.
What You Need
Just one thing: a command block. That’s it. You can grab one with creative mode or use this command to get it:
/give @s command_block
For Creative mode, they’re in the search menu or under redstone blocks.
Programming Your Command Block
Right-click the command block to open the console. You’ll see a text box labeled “Console Command” where you paste your summon command.
Here are the commands for different versions:
Minecraft 1.13 and Later
/summon villager ~ ~1 ~ {CustomName:"\"1Minecraft\"",Offers:{Recipes:[{buy:{id:leather,Count:1},sell:{id:bedrock,Count:1},maxUses:9}]}}
Minecraft 1.11 and 1.12
/summon villager ~ ~1 ~ {CustomName:1Minecraft,Offers:{Recipes:[{maxUses:9,buy:{id:leather,Count:1},sell:{id:bedrock,Count:1}}]}}
Minecraft 1.8, 1.9, and 1.10
/summon Villager ~ ~1 ~ {CustomName:1Minecraft,Offers:{Recipes:[{maxUses:9,buy:{id:leather,Count:1},sell:{id:bedrock,Count:1}}]}}
In these examples, the villager trades 1 leather for 1 bedrock, up to 9 times. The villager’s name is 1Minecraft.
Customizing the Trade
Change what the villager buys and sells by editing the item IDs:
- Buy item: Replace “leather” with any item ID (diamond, gold_ingot, etc.)
- Sell item: Replace “bedrock” with what the villager gives back
- Count: Change Count:1 to set how many of each item gets traded
- maxUses: Change 9 to any number for how many times they’ll trade
Example: A villager that trades 2 diamonds for 3 emeralds, 5 times max:
/summon villager ~ ~1 ~ {CustomName:"\"Merchant\"",Offers:{Recipes:[{buy:{id:diamond,Count:2},sell:{id:emerald,Count:3},maxUses:5}]}}
You need a list of item IDs? Check any Minecraft wiki or the game itself with F3 debug screen.
Activating the Command Block
Click Done after entering your command. Now you need a redstone trigger:
- Use a lever next to the block
- Place a button on it
- Set a pressure plate in front
- Use a redstone pulse from repeaters or pistons
When the redstone activates, the command block runs and summons your villager with the custom trade.
Tips
Multiple trades work too. Want a villager that buys leather AND buys iron? Add more recipes inside the square brackets:
{buy:{id:leather,Count:1},sell:{id:emerald,Count:1},maxUses:5},{buy:{id:iron_ingot,Count:5},sell:{id:diamond,Count:1},maxUses:3}
The more complex your trade setup, the longer your command gets. Some servers have command length limits, so keep it reasonable.
That’s all there is to it. You now have a villager that trades whatever you want, however you want.