McDonald's tally 1 minute into the second period put St. Louis up 2-1 and he helped out on goals by Jason Arnott and Alex Steen for the Blues, who grabbed a 2-games-to-1 advantage in their Western Conference quarterfinal series.
Patrik Berglund also scored as St. Louis won its second straight following a Game 1 loss to the Sharks.
Brian Elliott, subbing for the injured Jaroslav Halak, made 26 stops to earn the victory.
Antti Niemi turned aside 23-of-27 shots for the Sharks.
Wisconsin business offering 'therapeutic cuddling' forced to close
Couple calls 9-1-1 over missing hash browns; assault McDonanld's employees