87 formats
Read 81 and write 73 mesh formats — VTK, VTU, XDMF, Gmsh, MED, Exodus, CGNS, Abaqus, Nastran, UNV, OpenFOAM, GiD, COMSOL, FLUX and more — through a single API, with per-format options where the format has them.
One unified mesh data model, 87 file formats, 47 mesh and 6 data operations, a fast C++ core with pure-Python fallbacks, and six language surfaces over it.
meshio++ reads and writes unstructured mesh files. It supports 87 formats through one unified data model, so you can convert between any of them and run the same operations on the result, from the command line or from Python:
import meshioplusplus
mesh = meshioplusplus.read("input.msh") # format inferred from the extension
mesh.write("output.vtu")meshioplusplus convert input.msh output.vtu
meshioplusplus info input.xdmfUnder the Python API sits one C++ core with six language surfaces on top of it, and the tools — CLIs, viewers, an MCP server, a Blender add-on — are built on those surfaces:
See the Quickstart to get going, the Architecture page for the map, the Supported formats table for the full list and per-format options, and the CLI reference for the command-line tools.