If you have just a single MX, you have no onsite servers and all your SVIs (default gateways) are handled by the MX, then I'd say you were fine to link all your switches direct to the MX, reducing hop count etc - in such a setup, there would be no loops to resolve and no advantage from ASIC-powered routing (in a L3 switch). If you are using warm spare (dual MXs) I'd definitely go with @KarstenI 's recommendation; aggregate your switches to a stack of two switches, then put resilient links in as per the Recommended Topologies section of the warm spare document that @alemabrahao linked - and use Spanning Tree to resolve loops as needed and 're-open' blocked links when required upon failure.