We use a 3rd-party tool which generates STL files with a specific medical coordinate system (either RAS/LPS for those interested).

Our software can only load the 3D meshes in OBJ format but whenever we load an STL into Blender and export as OBJ, it appears upside down and back to front.
Worse, our other software emits metadata for annotations in the same coordinate system (as JSON/XML), and these are now garbage as they're not in the same coordinate system as the resultant OBJ.

Given we have explicitly defined coordinate systems we need to use, how can we get Blender to play nice? I have done a little googling and it seems Blender enforces its own axes which cannot be reconfigured but why does this mean it changes our X->Y, or whatever is happening?

Perhaps we can find a standard transform to apply to every model to counteract this but we would want that baked into the vertex positions not stored as a transform in the OBJ file (if OBJ even supports that?)