oxiMACHINE: Predicting oxidation states for MOFs.

What oxiMACHINE does

This tool takes a crystal structure and predicts the oxidation state for each metal site. Note that

  • We automatically attempt to calculate the primitive structure and will show the primitive structure in the visualizer
  • Limit calculations in this web app to structures with less than 500 atoms
  • We attempt to detect atomic overlaps and will return an error if we find overlaps
  • We trained the model on oxidation states of MOFs deposited in the MOF subset of the Cambridge Structure Database

In addition to the oxidation state predictions, we also output

  • The confidence in the assignment
  • The feature values for each metal site

More information about this tool can be found in the preprint on Chemrxiv (DOI: 10.26434/chemrxiv.11604129.v1). Note that this tool is in development.


This work is supported by the European Research Council (ERC) Advanced Grant (Agreement No.666983, MaGic) and the computing facilities of SCITAS, EPFL.

In our program, we use the following libraries, please also consider acknowledging them:

For training of the models, we used the data deposited in the Cambridge Structural Database (CSD), the following references describe the MOF subset and the CSD in general.

  1. Moghadam, P. Z.; Li, A.; Wiggin, S. B.; Tao, A.; Maloney, A. G. P.; Wood, P. A.; Ward, S. C.; Fairen-Jimenez, D. Chem. Mater. 2017, 29 (7), 2618–2625.
  2. C. R.; Bruno, I. J.; Lightfoot, M. P.; Ward, S. C. Crystallogr B Struct Sci Cryst Eng Mater 2016, 72 (2), 171–179.

How to cite

If you use this tool, please cite the preprint on Chemrxiv (DOI: 10.26434/chemrxiv.11604129.v1).

Upload your structure

For many metal centers you might need to run the oximachinerunner on your own machine if you run into a timeout with this web app.

By continuing, you agree with the terms of use of this service.


Otherwise, pick an example

Modify the settings for the feature importance

By default we use a crude approximation of the feature importance to give you fast results. If you care more about feature importance, you can choose to not approximate the SHAP value.[?]

Note: if you want to use the code on your computer, you can download the Python code from our Github repo. You can also find pre-built Docker images for this web app on GitHub. Latest release: v0.7.3. In case of problems, report an issue on GitHub