In theory I guess you could have the (soft) power switch wired to the BMC as basically a GPIO pin and then the BMC controlling the 'power switch' wired to the PCH or wherever it would go
On the platforms I've developed BMC firmware for that's pretty much exactly how it's arranged. Yes, it's more moving parts between the physical button and actually powering on the host, though often mitigated somewhat by a "GPIO pass-through" feature of popular BMC SoCs (Aspeed parts, at least), wherein you can configure the GPIO controller to basically just bridge two pins together in hardware so there's no software in between and it acts like a direct connection, which can be useful for times when the software that usually manages those GPIOs isn't able to do so for whatever reason (like during the BMC's boot sequence).