It may not be MTU related but to check if it is, you want to do a ping from the customer (or closest router if possible)
do a 1500 byte ping with the 'do not fragment' box ticked, out to furthest possible point, end of where MPLS stops at least
Then - very importantly - also do the same in reverse. Go from edge of network and ping back to customer, again with 1500 byte and 'do not fragment' ticked. If it fails, then yes you have MTU issues, otherwise no
MTU is a total shitshow with different vendors
What matters for MPLS/VPLS is the 'L2 MTU' but vendors display this differently.
Most will factor in the ethernet overheads (14 bytes) but not the Frame Check Sequence (4 bytes) ergo if they are configured for a L2 MTU of 1514 bytes = actually 1518 bytes. But its pretty well common practice that this will be displayed as 1514
Many network switches by default are configured as 1518 which they actually mean 1522. They assume 1500 byte L3MTU + 1x VLAN tag + FCS sequence (1522 bytes). Clear as mud? yep, shitshow...
This means you cannot use VPLS through this switch, as for that you need at least 1526 bytes (1500 byte L3 MTU + 8 byte VPLS + 14 byte Ethernet + 4 byte FCS)
If you were also using a VLAN then its 1530 bytes (add an extra 4 for every additional VLAN tag)
However just to confuse the crap out of everybody, some vendors don't include this and therefore will display L2 MTU of 1500 when they actually mean 1518
So you can have 3 different devices show 1500/1514/1518 and they're all the same, why? because derp
Fortunately - unlike L3 MTU - L2 MTU does not have any protocols i'm aware of that detect and use the configured value. They simply transmit whatever payload they are instructed to and they'll silently fail if it doesn't get through. The reason this is fortunate is because there's absolutely zero harm whatsoever in simply setting L2 MTU to the absolute highest value you can set. It will never try and use that whole L2MTU, its just giving it a very large buffer to play with. Doesn't matter if its 1550 bytes or 9600 bytes. No device will go "oh hey look i'm configured to do 9600 so i'll transmit packets of that size". Only if you explicitly configure something to transmit larger will a packet be sent (i.e. if you throw in lots of VLAN's, PPPoE, MPLS, combine packets together etc they'll add up)
All vendors should do this by default, but many don't, again because derp derp derp
In short: Ensure L2MTU (often simply called 'MTU' in most switches or radio's) is set the absolute highest it can be. There is no harm in doing this. But if there's anything in between that does not carry at least what you require then ur shit out of luck. And anything that doesn't allow to be set to ur minimum spec (we aim for 1556 bytes) should be removed from your network
Get in the habit of always logging into infrastructure equipment and setting L2 MTU highest. Fortunately MikroTik is 1600 bytes by default and this is enough hence we never need to change L2MTU on a MikroTik