The "mapgen_stair" aliases are only used by v6, and even then appear to
be optional in practice, so there's no reason for mcl_mapgen_core to
require mcl_stairs.
The only purpose of this dependency appears to be to force
mcl_monster_eggs to load before mcl_mapgen_core. It is not actually
used in the code.
mcl_monster_eggs is an undeclared dependency of mobs_mc_gameconfig,
mcl_biomes, and mcl_structures, all of which are either transitive
or direct dependencies of mcl_mapgen_core.
It's not possible to add a dependency on mcl_monster_eggs directly
to mobs_mc_gameconfig, because that would lead to a circular
dependency. So it seems like a dependency on mcl_monster_eggs is
declared as a dependency of mcl_mapgen_core as a workaround to
ensure that mcl_monster_eggs at least gets loaded before
mcl_mapgen_core.
I've moved mcl_monster_eggs to the optional dependencies which
should achieve the same aim without complaining if mcl_monster_eggs
is missing, but this should probably be cleaned up in future to
remove the circular dependency.