Magic Guard can be used to block status problems, recoil from weather, and hazards.
Overcoat can only block weather recoil.
So all in all Magic Guard>Overcoat
Magic Guard is for non weather teams.
Staus, Weather, all non attacking moves are blocked.
Overcoat is for weather teams.
Weather is blocked.
Magic Guard > Overcoat