After their shock defeat to Aironi a fortnight ago, reigning champions Munster needed to get themselves back on track in the hostile Sportsground atmosphere.
In the chase for a RaboDirect PRO12 play-off place, their need for points was made all the greater after victories for the remainder of the top four contenders.
The Ospreys' surprise win away to Leinster, ending the leaders' 20-match unbeaten run had allowed them to leapfrog Munster into second.
And McGahan was still without the majority of his Irish internationals, although departing scrum-half Tomas O'Leary - who will join London Irish next season - started in Galway.
That inexperience didn't show early on as the visitors earned themselves a penalty after 12 minutes only for Ian Keatley's effort to go wide and leave the game scoreless.
Connacht fly-half Miah Nikora took full advantage as he broke the deadlock on 17 minutes with his first penalty of the game.
Ian Keatley evened things up a minute later with a penalty of his own, but Munster were then reduced to 14 after Mick O'Driscoll was sent to the sin bin.
Connacht took full advantage of his absence as hooker Ethienne Reynecke went over from the ensuing lineout, Nikora's conversion making it 10-3.
Despite being a man down, Munster managed the next score as Keatley slotted his second penalty, and it remained 10-6 at the break.
The home side made the quicker start to the second half when Nikora added his second penalty, to stretch the lead to seven but after a raft of substitutions Zebo went over just before the hour with Keatley converting to draw Munster level.
However the home side fought back and earned themselves a penalty after Munster infringed at a scrum, Nikora duly slotting the shot at goal to reclaim the lead.
But two minutes later Tommy O'Donnell went over after good work from O'Leary to put Munster back in front.
|Connacht Rugby Score Card|
|Munster Rugby Score Card|