Language independent module providing minecraft data for minecraft clients, servers and libraries.
Clone or download
Latest commit 4619855 Oct 16, 2018
Failed to load latest commit information.
.circleci circleci Aug 26, 2018
data fix version definition for 1.13.2-pre1 Oct 16, 2018
doc Release 2.33.0 Oct 16, 2018
schemas update ajv, mocha and standard Sep 24, 2018
tools/js update protodef-validator Sep 24, 2018 support 1.13.2-pre1 Oct 16, 2018


Join the chat at Build Status

Language independent module providing minecraft data for minecraft clients, servers and libraries.


  • Minecraft PC version 0.30c (classic), 1.7.10, 1.8.8, 1.9 (15w40b, 1.9, 1.9.1-pre2, 1.9.2, 1.9.4), 1.10 (16w20a, 1.10-pre1, 1.10, 1.10.1, 1.10.2), 1.11 (16w35a, 1.11, 1.11.2), 1.12 (17w15a, 17w18b, 1.12-pre4, 1.12, 1.12.1, 1.12.2), and 1.13(17w50a, 1.13, 1.13.1, 1.13.2-pre1)
  • Minecraft PE version 0.14, 0.15 and 1.0


Minecraft-data is language independent, you can use it with these language specific modules :

Wrapper name Language Data provided
node-minecraft-data Node.js everything
python-minecraft-data python everything
McData Elixir protocol
ProtocolGen java generated java files from protocol.json to read and write minecraft packets
hs-minecraft-protocol haskell protocol.json haskell compiler

If you want to use minecraft-data in a new language, we advise you to create a new wrapper


Data provided:

Data Description
Effect Status/Potion effects
Language language code and their english strings
Instruments sounds emitted by blocks
Materials to be used with blocks data
Protocol a complete description of the protocol, can be used to automatically implement the protocol
Protocol Versions the whole list of minecraft protocol versions
Recipes to be used with blocks and items data
Windows the different kind of windows and their characteristics
Versions all the versions supported in minecraft-data

See more information about this data in the documentation


Projects using minecraft-data

These are the projects that use minecraft-data (through the wrappers) :

Project name Language Project type Data used
mineflayer Node.js bot library biomes, blocks, entities, instruments, items, materials, recipes
node-minecraft-protocol Node.js protocol serialization protocol
flying-squid Node.js server library biomes, blocks, materials
SpockBot Python bot library biomes, blocks, items, materials, windows, recipes
PhaseBot Java bot blocks, items, materials
McEx Elixir server blocks
VoxelGamesLib Java minigames server lib blocks, items


Projects that provide data:

Project name Language Source Data provided
minecraft-wiki-extractor Node.js minecraft wiki blocks, items, entities, recipes
mcdevs-wiki-extractor Node.js a partial protocol, entities
node-minecraft-extractor Node.js merge between and mcwiki a complete entities file
minecraft-jar-extractor Node.js minecraft server jar a very partial but completely up to date protocol
minecraft-jar-extractor in python Python minecraft server jar about the same protocol information as minecraft-jar-extractor in node.js
burger with burger-extractor Node.js minecraft server jar used to provide items, blocks, biomes and recipes

Pages interesting to manually update the data if necessary:

Page Data Inventory page windows instruments
a mineflayer PR biomes
mcwiki effects page effects protocol version numbers protocolVersions

Data quality

Minecraft data provides scripts to audit the data, they can be useful to check the data is correct :

Minecraft data also provides json schemas in enums_schemas/ that are used in test/test.js to check the json file are valid relative to these schemas. These schemas can also be used to understand better how the json files are formatted in order to use it.


Please read



Some of the data was extracted manually or automatically from and If required by one of the sources the license might change to something more appropriate.

Related project

minecraft-assets which provide minecraft assets along with json files that help to use them.