# Astroworld

> Look up Minecraft: Java Edition game data: mobs, biomes, items with their crafting recipes, enchantments, structures and their loot, chat commands, versions, advancements and villager trades. Search and filter each list, or get every detail about one entry. No account or API key required.

App · 18 actions. Web page: https://docs.lodol.com/docs/integrations/astroworld

## Actions

### Get a biome

Get everything about one Minecraft biome: its dimension, temperature and rainfall, grass, water and sky colors, unique blocks, mobs and structures. No API key required.

**Inputs**

- Biome (`biome`, text, required): The biome to look up.

**Outputs**: One biome.

- `category` (text): Its climate group: temperate, cold, warm, ocean, underground, beach_special, nether or end.
- `colors` (object): The biome's colors, as hex codes such as '#7BA4FF'.
- `dimension` (text): Where it is: overworld, nether or end.
- `id` (text): The biome's game ID, for example 'minecraft:cherry_grove'. Use it to look it up.
- `name` (text): The biome's name, for example 'Cherry Grove'.
- `notes` (text): Extra facts about the biome.
- `precipitation` (text): What falls there: rain, snow or none.
- `rarity` (text): How rare it is: common, uncommon, rare or very_rare.
- `spawning_mobs` (list): Mobs that spawn here.
- `structures_found` (list): Structures that can generate here.
- `temperature` (number): The game's temperature value. Above 0.95 is hot and dry, below 0.15 brings snow.
- `terrain_features` (list): What the land looks like.
- `unique_blocks` (list): Blocks found mainly in this biome.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.

**Example output**

```json
{
  "category": "temperate",
  "colors": {
    "foliage": "#B6DB61",
    "grass": "#B6DB61",
    "sky": "#7BA4FF",
    "water": "#3F76E4"
  },
  "dimension": "overworld",
  "id": "minecraft:cherry_grove",
  "name": "Cherry Grove",
  "notes": "A beautiful biome featuring pink cherry blossom trees. Generates on mountain hillsides.",
  "precipitation": "rain",
  "rarity": "rare",
  "spawning_mobs": [
    "Pig",
    "Sheep",
    "Rabbit",
    "Bee"
  ],
  "structures_found": [],
  "temperature": 0.5,
  "terrain_features": [
    "cherry blossom trees",
    "pink petal ground cover",
    "mountainside"
  ],
  "unique_blocks": [
    "Cherry Log",
    "Cherry Leaves",
    "Pink Petals",
    "Cherry Planks"
  ],
  "version_added": "1.20"
}
```

### Get a command

Get everything about one Minecraft chat command: how to write it, what each part means, examples ready to copy, who can use it, and the mistakes people often make. No API key required.

**Inputs**

- Command (`command`, text, required): The command to look up.

**Outputs**: One chat command.

- `category` (text): What it is for, for example 'player' or 'world'.
- `common_mistakes` (list): Mistakes people often make with it.
- `description` (text): What it does.
- `examples` (list): Example uses.
- `name` (text): The command's name without the slash, for example 'give'.
- `notes` (text): Extra facts about the command.
- `parameters` (list): The values the command takes.
- `permission_level` (number): Who can use it: 0 any player, 2 operators with cheats on, 3 server admins, 4 server owners.
- `related_commands` (list): Related commands, without the slash.
- `syntax` (text): How to write it, for example '/give <targets> <item> [<count>]'. Square brackets mark optional parts.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.

**Example output**

```json
{
  "category": "player",
  "common_mistakes": [
    "Using a count greater than 6400, the maximum per /give invocation is 6400."
  ],
  "description": "Gives one or more items to one or more players. The item can include NBT data via component syntax.",
  "examples": [
    {
      "command": "/give @p diamond 64",
      "explanation": "Gives the nearest player a full stack of 64 diamonds."
    }
  ],
  "name": "give",
  "notes": "In 1.20.5+ the NBT tag syntax was replaced with component syntax using square brackets.",
  "parameters": [
    {
      "description": "The player(s) to give the item to. Must resolve to players.",
      "name": "targets",
      "optional": false,
      "type": "entity"
    },
    {
      "description": "The item to give.",
      "name": "item",
      "optional": false,
      "type": "item_stack"
    },
    {
      "description": "The number of items to give (1-6400). Defaults to 1.",
      "name": "count",
      "optional": true,
      "type": "integer"
    }
  ],
  "permission_level": 2,
  "related_commands": [
    "clear",
    "item",
    "loot"
  ],
  "syntax": "/give <targets> <item> [<count>]",
  "version_added": "1.0"
}
```

### Get a mob

Get everything about one Minecraft mob: health, damage on each difficulty, experience and item drops, where it spawns, its weaknesses, and how to tame or breed it. No API key required.

**Inputs**

- Mob (`mob`, text, required): The mob to look up.

**Outputs**: One Minecraft mob.

- `behavior` (text): How it behaves.
- `breedable` (true/false): Whether it can be bred.
- `breeding_item` (text): The item that breeds it. Null when it cannot be.
- `damage` (object): Damage per attack, in health points, on each difficulty. 0 for a mob that does not attack.
- `drops` (list): What it drops when killed.
- `health` (number): Health points. 2 points are one heart, so 20 is 10 hearts.
- `id` (text): The mob's ID, for example 'creeper'. Use it to look it up.
- `name` (text): The mob's name, for example 'Creeper'.
- `notes` (text): Extra facts about the mob.
- `spawn_biomes` (list): The biomes it spawns in.
- `spawn_conditions` (text): When and where it spawns.
- `tameable` (true/false): Whether a player can tame it.
- `taming_method` (text): How to tame it. Null when it cannot be tamed.
- `type` (text): How it behaves towards players: passive, neutral, hostile or boss.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.
- `weaknesses` (list): What it is weak to.
- `xp_drop` (object): Experience points dropped when it is killed.

**Example output**

```json
{
  "behavior": "Silently approaches players and detonates after a 1.5s fuse. Explosion destroys blocks. Charged creepers (struck by lightning) have double explosion power.",
  "breedable": false,
  "breeding_item": null,
  "damage": {
    "easy": 22,
    "hard": 64,
    "normal": 43
  },
  "drops": [
    {
      "chance_percent": 100.0,
      "item": "Gunpowder",
      "max_count": 2,
      "min_count": 0
    },
    {
      "chance_percent": 100.0,
      "item": "Music Disc",
      "max_count": 1,
      "min_count": 1
    }
  ],
  "health": 20,
  "id": "creeper",
  "name": "Creeper",
  "notes": "Music Discs drop only when killed by a skeleton or stray arrow. Charged creepers kill another mob to drop its head.",
  "spawn_biomes": [
    "All Overworld biomes"
  ],
  "spawn_conditions": "Spawns at light level 0 on solid blocks in the Overworld.",
  "tameable": false,
  "taming_method": null,
  "type": "hostile",
  "version_added": "Classic 0.24_SURVIVAL_TEST",
  "weaknesses": [
    "Cats and ocelots (flees from them)",
    "Shields",
    "Knockback"
  ],
  "xp_drop": {
    "max": 5,
    "min": 5
  }
}
```

### Get a structure

Get everything about one Minecraft structure: the biomes and heights it generates at, its chest loot with the chance of each item, its mobs and dangers, and how to find it. No API key required.

**Inputs**

- Structure (`structure`, text, required): The structure to look up.

**Outputs**: One generated structure.

- `biomes` (list): Biomes it generates in.
- `category` (text): Where it generates: overworld_surface, overworld_underground, ocean, nether or end.
- `dangers` (list): What to watch out for.
- `dimension` (text): Where it is: overworld, nether or end.
- `features` (list): What it contains.
- `hostile_mobs` (list): Hostile mobs found there.
- `how_to_find` (text): How to find it.
- `id` (text): The structure's ID, for example 'woodland-mansion'. Use it to look it up.
- `loot` (list): What its chests can hold.
- `name` (text): The structure's name, for example 'Woodland Mansion'.
- `notes` (text): Extra facts about the structure.
- `rarity` (text): How rare it is: common, uncommon, rare, very_rare or unique.
- `rewards` (list): Why it is worth visiting.
- `unique_loot` (list): Loot found only here.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.
- `y_level` (object): The heights (Y levels) it generates between.

**Example output**

```json
{
  "biomes": [
    "Plains",
    "Desert",
    "Savanna"
  ],
  "category": "overworld_surface",
  "dangers": [
    "Zombie sieges at night",
    "Raids triggered by Bad Omen effect"
  ],
  "dimension": "overworld",
  "features": [
    "Contains houses, farms, and workstations",
    "Villagers trade items and have professions"
  ],
  "hostile_mobs": [
    "Zombie (during raids/night)",
    "Pillager (during raids)"
  ],
  "how_to_find": "Use /locate structure minecraft:village_plains. Villages are common in flat biomes and visible from a distance.",
  "id": "village",
  "loot": [
    {
      "chance_percent": 62.0,
      "item": "Bread",
      "max_count": 4,
      "min_count": 1
    },
    {
      "chance_percent": 43.0,
      "item": "Apple",
      "max_count": 5,
      "min_count": 1
    }
  ],
  "name": "Village",
  "notes": "Villages generate differently based on their biome.",
  "rarity": "common",
  "rewards": [
    "Villager trading for enchanted items",
    "Free crops and food"
  ],
  "unique_loot": [
    "Bell"
  ],
  "version_added": "Beta 1.8",
  "y_level": {
    "max": 80,
    "min": 60
  }
}
```

### Get a version

Get one Minecraft: Java Edition release: its release date, update name, headline features, other changes and fixes, and the versions just before and after it. No API key required.

**Inputs**

- Version (`version`, text, required): The version to look up, newest first.

**Outputs**: One Minecraft: Java Edition release.

- `edition` (text): The edition: 'java'.
- `major_features` (list): The headline features.
- `next_version` (text): The ID of the version after it. Null for the latest.
- `notable_changes` (list): Other notable changes.
- `notable_fixes` (list): Notable bug fixes.
- `previous_version` (text): The ID of the version before it. Null for the first one.
- `release_date` (text): The release date, as YYYY-MM-DD.
- `slug` (text): The version's ID, for example '1-21'. Use it to look it up.
- `type` (text): major-release (like 1.21) or minor-release (like 1.21.1).
- `update_name` (text): The update's name, for example 'Tricky Trials'.
- `version` (text): The version number, for example '1.21'.

**Example output**

```json
{
  "edition": "java",
  "major_features": [
    "Trial Chambers (underground structures)",
    "Breeze mob with wind charge attacks",
    "Trial Spawners with scaling difficulty"
  ],
  "next_version": "1-21-1",
  "notable_changes": [
    "Enchantments: Density, Breach, Wind Burst added"
  ],
  "notable_fixes": [
    "Fixed trial chamber generation edge cases"
  ],
  "previous_version": "1-20-6",
  "release_date": "2024-06-13",
  "slug": "1-21",
  "type": "major-release",
  "update_name": "Tricky Trials",
  "version": "1.21"
}
```

### Get a villager's trades

Get every trade one villager profession offers, level by level: what you give, what you get, the emerald price range, how often it can be used, and whether it is Java Edition only. No API key required.

**Inputs**

- Profession (`profession`, text, required): The villager profession to look up.

**Outputs**: One villager profession and every trade it offers.

- `biome_specific` (true/false): Whether its trades depend on the village's biome.
- `description` (text): What this villager trades in.
- `id` (text): The profession's ID, for example 'librarian'. Use it to look it up.
- `levels` (list): Its trades by level: Novice, Apprentice, Journeyman, Expert, Master.
- `name` (text): The profession's name, for example 'Librarian'.
- `trade_count` (number): How many trades it offers across every level.
- `workstation` (text): The block that gives a villager this job.

**Example output**

```json
{
  "biome_specific": true,
  "description": "The most important villager for enchantments. Sells enchanted books from the full enchantment pool, plus bookshelves, lanterns, name tags, and clocks. Buys paper and books.",
  "id": "librarian",
  "levels": [
    {
      "level": 1,
      "name": "Novice",
      "trades": [
        {
          "emerald_price_max": null,
          "emerald_price_min": null,
          "java_only": false,
          "max_uses": 16,
          "notes": null,
          "you_also_give": null,
          "you_also_give_amount": null,
          "you_get": "Emerald",
          "you_get_amount": 1,
          "you_give": "Paper",
          "you_give_amount": 24
        },
        {
          "emerald_price_max": 9,
          "emerald_price_min": 9,
          "java_only": false,
          "max_uses": 12,
          "notes": null,
          "you_also_give": null,
          "you_also_give_amount": null,
          "you_get": "Bookshel",
          "you_get_amount": 1,
          "you_give": "Emerald",
          "you_give_amount": 9
        }
      ]
    }
  ],
  "name": "Librarian",
  "trade_count": 2,
  "workstation": "Lectern"
}
```

### Get an advancement

Get one Minecraft advancement (achievement): how to earn it, the advancements you need first, its difficulty and its experience reward. No API key required.

**Inputs**

- Advancement (`advancement`, text, required): The advancement to look up.

**Outputs**: One advancement (achievement).

- `description` (text): The in-game description.
- `difficulty` (text): How hard it is: easy, medium, hard or expert.
- `game_id` (text): The ID the game uses, for example 'minecraft:story/lava_bucket', as the /advancement command takes it.
- `how_to_complete` (text): How to earn it.
- `icon` (text): The item shown as its icon.
- `is_challenge` (true/false): Whether it is a challenge (the purple-framed kind).
- `is_goal` (true/false): Whether it is a goal (the rounded-frame kind).
- `name` (text): The advancement's name, for example 'Hot Stuff'.
- `parent` (text): The ID of the advancement before it. Null for a tab's first.
- `prerequisites` (list): IDs of the advancements needed first.
- `rewards` (text): What it rewards, as text, for example '10 XP'.
- `slug` (text): The advancement's ID, for example 'hot-stuff'. Use it to look it up.
- `tab` (text): The tab it sits in: minecraft, nether, end, adventure or husbandry.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.
- `xp_reward` (number): Experience points awarded.

**Example output**

```json
{
  "description": "Fill a Bucket with lava",
  "difficulty": "easy",
  "game_id": "minecraft:story/lava_bucket",
  "how_to_complete": "Craft a bucket from 3 iron ingots, then right-click on a lava source block to fill it.",
  "icon": "Lava Bucket",
  "is_challenge": false,
  "is_goal": false,
  "name": "Hot Stuff",
  "parent": "acquire-hardware",
  "prerequisites": [
    "acquire-hardware"
  ],
  "rewards": "10 XP",
  "slug": "hot-stuff",
  "tab": "minecraft",
  "version_added": "1.12",
  "xp_reward": 10
}
```

### Get an enchantment

Get everything about one Minecraft enchantment: what it does at each level, the items it goes on, which enchantments it cannot be combined with, and where to get it. No API key required.

**Inputs**

- Enchantment (`enchantment`, text, required): The enchantment to look up.

**Outputs**: One enchantment.

- `applicable_items` (list): The kinds of item it can go on.
- `category` (text): What it is for: melee, ranged, mining, armor, universal or special.
- `description` (text): What it does.
- `effect_per_level` (list): What each level does.
- `id` (text): The enchantment's ID, for example 'silk_touch'. Use it to look it up.
- `incompatible_with` (list): Enchantments it cannot be combined with.
- `is_curse` (true/false): Whether it is a curse.
- `max_level` (number): The highest level it goes to.
- `name` (text): The enchantment's name, for example 'Silk Touch'.
- `notes` (text): Extra facts about the enchantment.
- `obtained_from` (list): Where to get it.
- `treasure_only` (true/false): True when it never comes from an enchanting table, only from loot, trading or fishing.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.
- `weight` (number): How often it comes up at an enchanting table. Higher is more common.

**Example output**

```json
{
  "applicable_items": [
    "pickaxe",
    "shovel",
    "axe",
    "hoe"
  ],
  "category": "mining",
  "description": "Mined blocks drop themselves instead of their usual drops (e.g., stone instead of cobblestone).",
  "effect_per_level": [
    "Level 1: Blocks drop themselves (glass, stone, ores, etc.)"
  ],
  "id": "silk_touch",
  "incompatible_with": [
    "Fortune"
  ],
  "is_curse": false,
  "max_level": 1,
  "name": "Silk Touch",
  "notes": "Does not work on spawners or budding amethyst.",
  "obtained_from": [
    "Enchanting Table",
    "Anvil",
    "Loot Chest",
    "Villager Trading"
  ],
  "treasure_only": false,
  "version_added": "1.0",
  "weight": 1
}
```

### Get an item

Get everything about one Minecraft item: its crafting recipe laid out as a 3x3 grid, how to obtain it, durability, stack size, food and fuel value, and enchantments. No API key required.

**Inputs**

- Item (`item`, text, required): The item to look up.

**Outputs**: One item.

- `applicable_enchantments` (list): Enchantments it can take.
- `category` (text): Its group: tool, weapon, armor, food, block, redstone, potion, music_disc, transportation or miscellaneous.
- `craftable` (true/false): Whether it has a crafting recipe.
- `crafting_recipe` (object): How to craft it. Null when it cannot be crafted.
- `description` (text): What the item is.
- `durability` (number): How many uses before it breaks. Null if it never wears.
- `enchantable` (true/false): Whether it can be enchanted.
- `food_hunger` (number): Hunger points restored when eaten. Null if not food.
- `food_saturation` (number): Saturation restored when eaten. Null if not food.
- `fuel_items_smelted` (number): How many items it smelts as furnace fuel. Null if it is not a fuel.
- `id` (text): The item's ID, for example 'diamond_sword'. Use it to look it up.
- `name` (text): The item's name, for example 'Diamond Sword'.
- `notes` (text): Extra facts about the item.
- `obtained_by` (list): Ways to get it.
- `stack_size` (number): How many fit in one inventory slot.
- `version_added` (text): The Minecraft version this was added in, for example '1.20'.

**Example output**

```json
{
  "applicable_enchantments": [
    "Sharpness",
    "Smite",
    "Bane of Arthropods"
  ],
  "category": "tool",
  "craftable": true,
  "crafting_recipe": {
    "ingredients": [
      {
        "item": "Diamond",
        "symbol": "D"
      },
      {
        "item": "Stick",
        "symbol": "S"
      }
    ],
    "output_count": 1,
    "output_item": "Diamond Sword",
    "pattern": [
      " D ",
      " D ",
      " S "
    ],
    "station": "Crafting Table"
  },
  "description": "A powerful melee weapon dealing 7 base attack damage. The go-to weapon before obtaining netherite.",
  "durability": 1561,
  "enchantable": true,
  "food_hunger": null,
  "food_saturation": null,
  "fuel_items_smelted": null,
  "id": "diamond_sword",
  "name": "Diamond Sword",
  "notes": "Deals 7 attack damage. Can be upgraded to netherite at a Smithing Table.",
  "obtained_by": [
    "Crafting",
    "End City chest loot"
  ],
  "stack_size": 1,
  "version_added": "1.0"
}
```

### List advancements

List Minecraft advancements (the game's achievements) with how to earn each one, its difficulty and its reward. Narrow the list by name, tab or difficulty. No API key required.

**Inputs**

- Name contains (`search`, text): Only advancements whose name contains this text, for example 'diamond'. Not case sensitive. Leave it empty for all of them.
- Tab (`tab`, text): Only advancements in this tab of the advancements screen. Leave it empty for all. One of: `minecraft` (Minecraft (the main story)), `nether`, `end` (The End), `adventure`, `husbandry`.
- Difficulty (`difficulty`, text): Only advancements this hard. Leave it empty for all. One of: `easy`, `medium`, `hard`, `expert`.

**Outputs**

- `advancements` (list): The advancements that matched.
- `count` (number): How many entries matched.

**Example output**

```json
{
  "advancements": [
    {
      "description": "Fill a Bucket with lava",
      "difficulty": "easy",
      "game_id": "minecraft:story/lava_bucket",
      "how_to_complete": "Craft a bucket from 3 iron ingots, then right-click on a lava source block to fill it.",
      "icon": "Lava Bucket",
      "is_challenge": false,
      "is_goal": false,
      "name": "Hot Stuff",
      "parent": "acquire-hardware",
      "prerequisites": [
        "acquire-hardware"
      ],
      "rewards": "10 XP",
      "slug": "hot-stuff",
      "tab": "minecraft",
      "version_added": "1.12",
      "xp_reward": 10
    }
  ],
  "count": 1
}
```

### List biomes

List Minecraft biomes with their climate, colors, rarity, the mobs that spawn there and the structures found there. Narrow the list by name, dimension, climate or rarity. No API key required.

**Inputs**

- Name contains (`search`, text): Only biomes whose name contains this text, for example 'forest'. Not case sensitive. Leave it empty for all of them.
- Dimension (`dimension`, text): Only those in this dimension. Leave it empty for all three. One of: `overworld`, `nether`, `end` (The End).
- Climate (`category`, text): Only biomes of this kind. Leave it empty for all. One of: `temperate`, `cold`, `warm`, `ocean`, `underground`, `beach_special` (Beaches and special), `nether`, `end` (The End).
- Rarity (`rarity`, text): Only biomes this rare. Leave it empty for all. One of: `common`, `uncommon`, `rare`, `very_rare` (Very rare).

**Outputs**

- `biomes` (list): The biomes that matched.
- `count` (number): How many entries matched.

**Example output**

```json
{
  "biomes": [
    {
      "category": "temperate",
      "colors": {
        "foliage": "#B6DB61",
        "grass": "#B6DB61",
        "sky": "#7BA4FF",
        "water": "#3F76E4"
      },
      "dimension": "overworld",
      "id": "minecraft:cherry_grove",
      "name": "Cherry Grove",
      "notes": "A beautiful biome featuring pink cherry blossom trees. Generates on mountain hillsides.",
      "precipitation": "rain",
      "rarity": "rare",
      "spawning_mobs": [
        "Pig",
        "Sheep",
        "Rabbit",
        "Bee"
      ],
      "structures_found": [],
      "temperature": 0.5,
      "terrain_features": [
        "cherry blossom trees",
        "pink petal ground cover",
        "mountainside"
      ],
      "unique_blocks": [
        "Cherry Log",
        "Cherry Leaves",
        "Pink Petals",
        "Cherry Planks"
      ],
      "version_added": "1.20"
    }
  ],
  "count": 1
}
```

### List commands

List Minecraft chat commands with their syntax, examples and common mistakes. Narrow the list by name, category or who is allowed to use them. No API key required.

**Inputs**

- Name contains (`search`, text): Only commands whose name contains this text, for example 'game'. Not case sensitive. Leave it empty for all of them.
- Category (`category`, text): Only commands of this kind. Leave it empty for all. One of: `player`, `world`, `server`, `data`, `display`, `logic`, `gameplay`, `special`, `time_weather` (Time and weather), `bossbar` (Boss bars), `execute`.
- Who can use it (`permission_level`, text): Only commands that need exactly this permission. Leave it empty for all. One of: `0` (Any player (level 0)), `2` (Operators with cheats on (level 2)), `3` (Server admins (level 3)), `4` (Server owners (level 4)).

**Outputs**

- `commands` (list): The commands that matched.
- `count` (number): How many entries matched.

**Example output**

```json
{
  "commands": [
    {
      "category": "player",
      "common_mistakes": [
        "Using a count greater than 6400, the maximum per /give invocation is 6400."
      ],
      "description": "Gives one or more items to one or more players. The item can include NBT data via component syntax.",
      "examples": [
        {
          "command": "/give @p diamond 64",
          "explanation": "Gives the nearest player a full stack of 64 diamonds."
        }
      ],
      "name": "give",
      "notes": "In 1.20.5+ the NBT tag syntax was replaced with component syntax using square brackets.",
      "parameters": [
        {
          "description": "The player(s) to give the item to. Must resolve to players.",
          "name": "targets",
          "optional": false,
          "type": "entity"
        },
        {
          "description": "The item to give.",
          "name": "item",
          "optional": false,
          "type": "item_stack"
        },
        {
          "description": "The number of items to give (1-6400). Defaults to 1.",
          "name": "count",
          "optional": true,
          "type": "integer"
        }
      ],
      "permission_level": 2,
      "related_commands": [
        "clear",
        "item",
        "loot"
      ],
      "syntax": "/give <targets> <item> [<count>]",
      "version_added": "1.0"
    }
  ],
  "count": 1
}
```

### List enchantments

List Minecraft enchantments with their maximum level, what each level does, the items they go on and the enchantments they clash with. Narrow the list by name or by what they are for. No API key required.

**Inputs**

- Name contains (`search`, text): Only enchantments whose name contains this text, for example 'protection'. Not case sensitive. Leave it empty for all of them.
- Used on (`category`, text): Only enchantments for this kind of gear. Leave it empty for all. One of: `melee` (Melee weapons), `ranged` (Bows, crossbows and tridents), `mining` (Mining tools), `armor`, `universal` (Any item), `special`.

**Outputs**

- `count` (number): How many entries matched.
- `enchantments` (list): The enchantments that matched.

**Example output**

```json
{
  "count": 1,
  "enchantments": [
    {
      "applicable_items": [
        "pickaxe",
        "shovel",
        "axe",
        "hoe"
      ],
      "category": "mining",
      "description": "Mined blocks drop themselves instead of their usual drops (e.g., stone instead of cobblestone).",
      "effect_per_level": [
        "Level 1: Blocks drop themselves (glass, stone, ores, etc.)"
      ],
      "id": "silk_touch",
      "incompatible_with": [
        "Fortune"
      ],
      "is_curse": false,
      "max_level": 1,
      "name": "Silk Touch",
      "notes": "Does not work on spawners or budding amethyst.",
      "obtained_from": [
        "Enchanting Table",
        "Anvil",
        "Loot Chest",
        "Villager Trading"
      ],
      "treasure_only": false,
      "version_added": "1.0",
      "weight": 1
    }
  ]
}
```

### List items

List Minecraft items with their crafting recipes, durability, stack size, food value and the enchantments they take. Narrow the list by name or category. No API key required.

**Inputs**

- Name contains (`search`, text): Only items whose name contains this text, for example 'sword'. Not case sensitive. Leave it empty for all of them.
- Category (`category`, text): Only items of this kind. Leave it empty for all. One of: `tool` (Tools), `weapon` (Weapons), `armor`, `food`, `block` (Blocks), `redstone`, `potion` (Potions), `music_disc` (Music discs), `transportation`, `miscellaneous`.

**Outputs**

- `count` (number): How many entries matched.
- `items` (list): The items that matched.

**Example output**

```json
{
  "count": 1,
  "items": [
    {
      "applicable_enchantments": [
        "Sharpness",
        "Smite",
        "Bane of Arthropods"
      ],
      "category": "tool",
      "craftable": true,
      "crafting_recipe": {
        "ingredients": [
          {
            "item": "Diamond",
            "symbol": "D"
          },
          {
            "item": "Stick",
            "symbol": "S"
          }
        ],
        "output_count": 1,
        "output_item": "Diamond Sword",
        "pattern": [
          " D ",
          " D ",
          " S "
        ],
        "station": "Crafting Table"
      },
      "description": "A powerful melee weapon dealing 7 base attack damage. The go-to weapon before obtaining netherite.",
      "durability": 1561,
      "enchantable": true,
      "food_hunger": null,
      "food_saturation": null,
      "fuel_items_smelted": null,
      "id": "diamond_sword",
      "name": "Diamond Sword",
      "notes": "Deals 7 attack damage. Can be upgraded to netherite at a Smithing Table.",
      "obtained_by": [
        "Crafting",
        "End City chest loot"
      ],
      "stack_size": 1,
      "version_added": "1.0"
    }
  ]
}
```

### List mobs

List Minecraft mobs with their health, damage, drops, spawning and breeding details. Narrow the list by name or by how the mob behaves towards players. No API key required.

**Inputs**

- Name contains (`search`, text): Only mobs whose name contains this text, for example 'spider'. Not case sensitive. Leave it empty for all of them.
- Behavior (`mob_type`, text): Only mobs that behave this way towards players. Leave it empty for all of them. One of: `passive` (Passive (never attacks)), `neutral` (Neutral (attacks when provoked)), `hostile` (Hostile (attacks on sight)), `boss`.

**Outputs**

- `count` (number): How many entries matched.
- `mobs` (list): The mobs that matched.

**Example output**

```json
{
  "count": 1,
  "mobs": [
    {
      "behavior": "Silently approaches players and detonates after a 1.5s fuse. Explosion destroys blocks. Charged creepers (struck by lightning) have double explosion power.",
      "breedable": false,
      "breeding_item": null,
      "damage": {
        "easy": 22,
        "hard": 64,
        "normal": 43
      },
      "drops": [
        {
          "chance_percent": 100.0,
          "item": "Gunpowder",
          "max_count": 2,
          "min_count": 0
        },
        {
          "chance_percent": 100.0,
          "item": "Music Disc",
          "max_count": 1,
          "min_count": 1
        }
      ],
      "health": 20,
      "id": "creeper",
      "name": "Creeper",
      "notes": "Music Discs drop only when killed by a skeleton or stray arrow. Charged creepers kill another mob to drop its head.",
      "spawn_biomes": [
        "All Overworld biomes"
      ],
      "spawn_conditions": "Spawns at light level 0 on solid blocks in the Overworld.",
      "tameable": false,
      "taming_method": null,
      "type": "hostile",
      "version_added": "Classic 0.24_SURVIVAL_TEST",
      "weaknesses": [
        "Cats and ocelots (flees from them)",
        "Shields",
        "Knockback"
      ],
      "xp_drop": {
        "max": 5,
        "min": 5
      }
    }
  ]
}
```

### List structures

List Minecraft structures such as villages, temples and strongholds, with their loot, dangers and how to find them. Narrow the list by name, dimension, where they generate or rarity. No API key required.

**Inputs**

- Name contains (`search`, text): Only structures whose name contains this text, for example 'temple'. Not case sensitive. Leave it empty for all of them.
- Dimension (`dimension`, text): Only those in this dimension. Leave it empty for all three. One of: `overworld`, `nether`, `end` (The End).
- Where it generates (`category`, text): Only structures that generate here. Leave it empty for all. One of: `overworld_surface` (Overworld, on the surface), `overworld_underground` (Overworld, underground), `ocean`, `nether`, `end` (The End).
- Rarity (`rarity`, text): Only structures this rare. Leave it empty for all. One of: `common`, `uncommon`, `rare`, `very_rare` (Very rare), `unique` (Unique (one per world)).

**Outputs**

- `count` (number): How many entries matched.
- `structures` (list): The structures that matched.

**Example output**

```json
{
  "count": 1,
  "structures": [
    {
      "biomes": [
        "Plains",
        "Desert",
        "Savanna"
      ],
      "category": "overworld_surface",
      "dangers": [
        "Zombie sieges at night",
        "Raids triggered by Bad Omen effect"
      ],
      "dimension": "overworld",
      "features": [
        "Contains houses, farms, and workstations",
        "Villagers trade items and have professions"
      ],
      "hostile_mobs": [
        "Zombie (during raids/night)",
        "Pillager (during raids)"
      ],
      "how_to_find": "Use /locate structure minecraft:village_plains. Villages are common in flat biomes and visible from a distance.",
      "id": "village",
      "loot": [
        {
          "chance_percent": 62.0,
          "item": "Bread",
          "max_count": 4,
          "min_count": 1
        },
        {
          "chance_percent": 43.0,
          "item": "Apple",
          "max_count": 5,
          "min_count": 1
        }
      ],
      "name": "Village",
      "notes": "Villages generate differently based on their biome.",
      "rarity": "common",
      "rewards": [
        "Villager trading for enchanted items",
        "Free crops and food"
      ],
      "unique_loot": [
        "Bell"
      ],
      "version_added": "Beta 1.8",
      "y_level": {
        "max": 80,
        "min": 60
      }
    }
  ]
}
```

### List versions

List Minecraft: Java Edition releases from 1.0 onwards, with release dates, update names, headline features and fixes. Narrow the list by version number or update name (searching 'trails' finds 1.20), or to major or minor updates. No API key required.

**Inputs**

- Version or update name contains (`search`, text): Only versions whose number or update name contains this text, for example '1.20' or 'trails'. Not case sensitive. Leave it empty for all of them.
- Update size (`release_type`, text): Only major or only minor updates. Leave it empty for both. One of: `major-release` (Major updates (like 1.21)), `minor-release` (Minor updates (like 1.21.1)).

**Outputs**

- `count` (number): How many entries matched.
- `versions` (list): The versions that matched.

**Example output**

```json
{
  "count": 1,
  "versions": [
    {
      "edition": "java",
      "major_features": [
        "Trial Chambers (underground structures)",
        "Breeze mob with wind charge attacks",
        "Trial Spawners with scaling difficulty"
      ],
      "next_version": "1-21-1",
      "notable_changes": [
        "Enchantments: Density, Breach, Wind Burst added"
      ],
      "notable_fixes": [
        "Fixed trial chamber generation edge cases"
      ],
      "previous_version": "1-20-6",
      "release_date": "2024-06-13",
      "slug": "1-21",
      "type": "major-release",
      "update_name": "Tricky Trials",
      "version": "1.21"
    }
  ]
}
```

### List villager trades

List every villager profession with its workstation and full trade table, from Novice to Master: what you give, what you get, and the emerald price. No API key required.

**Inputs**

- Name contains (`search`, text): Only professions whose name contains this text, for example 'smith'. Not case sensitive. Leave it empty for all of them.

**Outputs**

- `count` (number): How many entries matched.
- `professions` (list): The professions that matched.

**Example output**

```json
{
  "count": 1,
  "professions": [
    {
      "biome_specific": true,
      "description": "The most important villager for enchantments. Sells enchanted books from the full enchantment pool, plus bookshelves, lanterns, name tags, and clocks. Buys paper and books.",
      "id": "librarian",
      "levels": [
        {
          "level": 1,
          "name": "Novice",
          "trades": [
            {
              "emerald_price_max": null,
              "emerald_price_min": null,
              "java_only": false,
              "max_uses": 16,
              "notes": null,
              "you_also_give": null,
              "you_also_give_amount": null,
              "you_get": "Emerald",
              "you_get_amount": 1,
              "you_give": "Paper",
              "you_give_amount": 24
            },
            {
              "emerald_price_max": 9,
              "emerald_price_min": 9,
              "java_only": false,
              "max_uses": 12,
              "notes": null,
              "you_also_give": null,
              "you_also_give_amount": null,
              "you_get": "Bookshel",
              "you_get_amount": 1,
              "you_give": "Emerald",
              "you_give_amount": 9
            }
          ]
        }
      ],
      "name": "Librarian",
      "trade_count": 2,
      "workstation": "Lectern"
    }
  ]
}
```
