As for IGMP version for IGMP snooping purposes, you cannot configure the IGMP version. Only version 3 is supported. However, IGMPv3 is backward compatible with IGMPv2. The only real IGMP packets you'll see transmitted by a switch performing IGMP snooping will be IGMP general query packets.
IGMPv3 query packets are processed in a fully backward compatible manner by IGMPv2 hosts. The only difference between an IGMPv3 general query versus IGMPv2 is that the IGMP payload of the v3 packet has some additional fields present in it not used by IGMPv2 hosts.
These are the fields that extend the IGMP payload beyond 8 bytes. However, this extra data is simply ignored by an IGMPv2 host, per IGMPv2 RFC 2236:
2.5. Other fields
Note that IGMP messages may be longer than 8 octets, especially
future backwards-compatible versions of IGMP. As long as the Type is
one that is recognized, an IGMPv2 implementation MUST ignore anything
past the first 8 octets while processing the packet. However, the
IGMP checksum is always computed over the whole IP payload, not just
over the first 8 octets.
I am not a Cisco Meraki employee. My suggestions are based on documentation of Meraki best practices and day-to-day experience.
Please, if this post was useful, leave your kudos and mark it as solved.