James McDonald fired seven shutout innings and Pedro Alvarez bashed two homers Tuesday in the Pittsburgh Pirates\' 9-0 spanking of St. Louis. McDonald (12-6) allowed only one runner to reach as far as second base in dominating the Cardinals. The right-hander yielded just two hits, issued a single walk and struck out six. Alvarez cracked a two-run homer in the third inning and a solo shot in the sixth with a run-scoring double in between, while Clint Barmes knocked in a pair for the Pirates, who evened their three-game set. The win pulled Pittsburgh to within two games of St. Louis for a National League wild card berth. The loss was hung on Jake Westbrook (13-10), who coughed up seven runs on 11 hits in a five-inning outing for the Cardinals.