SD Card formatting in FAT 32 file system
SD card is no more than a block device -- a collection of numerated sectors (blocks) from the sector numbered zero up to its capacity.

There are two types of SD cards -- simple SD and SDHC. They differ in the way the sectors are addressed. If you are able to read MBR, you're using the correct block driver for your card.

Everything else, including search for partitions and reading files within the partition, is purely a software task.

In your MCU, I can recommend using FatFS driver that is versatile in the meaning that it supports both MBRed cards and the ones without MBR, it supports several partitions at once and it auto-detects and supports any of FAT12, FAT16 or FAT32.

Regarding the way to format SDcard, I can recommend using gparted in linux to make MBR and create formatted partitions exactly with the cluster size you need. In linux, you can even easily create MBRless partition (whole device is a single partition).