mtanvil
A Python library for parsing and editing Luanti worlds.
The name comes from Luanti’s former name (‘MT’ for Minetest) and the Minecraft world parsing library ‘anvil’
mtanvil is in alpha, so if you decide to use it then be aware of the following:
Future updates will have breaking changes.
Testing is welcome, please do open an issue if you find any bugs or problems.
Features that are not supported (yet):
- Some node inventories fail to load, such as the furnace in Minetest Game. I am researching this constantly and will have a solution to this very soon.
- Older MapBlock formats (<29) may not load and/or serialize correctly (due to the lack of documentation of the specifics of their zlib compression). This will be fixed soon.
- Older MapBlock formats (<23) will lose node metadata due to the old and new formats not being directly compatible. The conversion will be figured out in the future.
mtanvil fully supports MapBlock format version 29 (latest). Other versions may not be fully supported right now but should receive full support in the future.
It is recommended that you familiarize yourself with the Map File Format and MapBlock Serialization Format so that you fully understand what data mtanvil provides.
Installation
Install mtanvil by running
pip install mtanvil
in your terminal.
Docs
You can find the comprehensive mtanvil docs here.
Please do open an issue if you find that something has not been documented properly.
Metadata
Release files for mtanvil 0.3.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| mtanvil-0.3.1.tar.gz | 21.7 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| mtanvil-0.3.1-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 42.8 kB
Release files / mtanvil-0.3.1.tar.gz
| Download URL | mtanvil-0.3.1.tar.gz |
|---|---|
| Size | 21.7 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
f8c5a1e75e8fbe9109057a6bcefdc470cfa2437910e0ada8d2439c92d5ea1fe7
|
|
BLAKE2b-256 checksum How to use checksums |
e394bab0b23141cf8c251a8990f02df558fbc9a6be2098e3fdfe8bccb2f57b52
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 1, 2026.
Transparency logRelease files / mtanvil-0.3.1-py3-none-any.whl
| Download URL | mtanvil-0.3.1-py3-none-any.whl |
|---|---|
| Size | 21.1 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
3c4f7e244a26a030a78ba8d4746e4239937b3670a8830966464d4b3cec84a419
|
|
BLAKE2b-256 checksum How to use checksums |
c84fdad5a478c608386158fa4696ed18d31b3db8f9d718081bd7c7617fe20f96
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/6.1.0 CPython/3.13.7
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Jan 1, 2026.
Transparency log