The idea to have the models origin NOT at their feet, is to be able to walk up stairs and to prevent from stuck in a terrain or uneven block dungeon.
There should be lot of scripts showing how to use min_z and floor in order to glue the model to the ground without sinking in the floor or floating above it.
Try solid stairs to see if your model is capable to climb the stairs. If the models origin is below the stairs surface, it will not climb it.