It depends on how your traffic is going to be carried over the MPLS cloud. Following are some possibilities:
If it is going to be carried within a Layer-3 VPN over the MPLS cloud then the MTU within the MPLS core needs to accomodate an extra 8-bytes (two labels). If the MPLS core also deploys Traffic Engineering then an additional label can come into play. Let's say your IP packet size is 1500 bytes (including IP/UDP header) you would then add your Ethernet header on top of it (as usual), however, in case of MPLS additional labels will be inserted between the payload and Layer-2 header thereby increasing the core MTU requirements.
If it is going to be just label switched then your MPLS core mtu will need to accommodate an extra 4-bytes. This is on top of the Ethernet/IP/UDP headers.
If it is going to be carried within a Layer-2 VPN (pseudowire) then the mtu requirements increase considerably. This is because the entire frame is treated as payload (1514 bytes for example - 1500 IP mtu and 14 bytes of Ethernet header) and you add your MPLS core ethernet header and labels on top of that. So your core MTU requirement easily goes to around 1522 bytes or more.