We have some sort of the same setup.
I've put the MX in WARM spare.
2 MS into a stack
connected all access switches with LACP to the stack (2 interfaces, each to a member of the stack)
connected the access points across odd & even numbered switches.
spread the odd & even access points between left and right parts of the building and floors.
This way we can have maintenance on the MX, the MS Stack, and spread the maintenance between odd & even access switches and access points while maintaining lots of the connectivity.
MX
The MX is connected to 2 internet providers by using a WAN break out switch. 1 per provider.
And a transit subnet of /29 per provider.
The failover link between the MX's only allows 1 "warm spare" vlan.
The MX is connected to the MS stack using a trunk containing vlan 1 and a transit vlan 2.
The physical interfaces are not LACP.
Vlan 1 serves as DHCP server.
vlan 2 is connected to a SVI interface on the MS Stack.
MS
The MS has several vlan's, each vlan has it's own DHCP served by the MS Stack.
We use ACL's to secure some traffic, MS does not support ICMP in ACL unfortunately.
These ACL's are quite some hasle as they are vlan ACL's and not L3 interface ACL's
MR
The access-points are connected with trunks to the MS CORE
On 1 SSID we use 2 vlan's with Layer 3 roaming.