I have a large MIP built with PuLP in python, and want to utilize the HiGHS Solver. However, PuLP does not have the option to use HiGHS as a solver. One option I am aware of would be to use PuLP to write an MPS file, and call HiGHS via command line on the MPS file. I wanted to avoid this as I am trying to develop everything within python. Another option would be to use scipy's optimize in which HiGHS is configured to be one of the solver options. However, it appears scipy requires the MIP to be in matrix form as an input, and does not support reading MPS files.
In general, Is there a better way to utilize open-source non-default solvers with the Python PuLP interface?