ST. LOUIS -- Jake Westbrook threw six solid innings and Carlos Beltran hit his 26th home run as the St. Louis Cardinals beat Matt Cain and the San Francisco Giants 8-2 Monday night.
The Cardinals, who have won four in a row overall and seven straight at home, snapped San Francisco's three-game winning streak.
Jon Jay went 4 for 4 and drove in two runs for the Cardinals. Matt Carpenter added a two-run, bases-loaded single.
Angel Pagan led off the game with a home run and Buster Posey also connected for the Giants.
Westbrook (11-8) won his fourth decision in a row, giving up seven hits and two runs. He struck out four and did not walk a batter. Westbrook has gone at least six innings in his last 11 starts.
Cain (10-5) tied a season high by giving up five earned runs in 5 2-3 innings. The three-time All-Star absorbed back-to-back losses for the second time this season. Cain has allowed nine home runs in his last seven starts.
St. Louis scored three times in the sixth to break a 2-all tie.
Matt Holliday doubled and came around to score on a sacrifice fly by David Freese. Yadier Molina and Jay followed with singles and Cain walked Rafael Furcal to load the bases for Carpenter, who drove a two-strike pitch to left field.
The Cardinals added three runs in the seventh to go up 8-2. Jay's two-run single was the key hit.
Beltran, who leads the NL with 78 RBIs, hit the first pitch of the second inning 418 feet to tie it at 1. Four batters later, Furcal broke out of an 0-for-14 slump with an RBI single the 10th pitch from Cain.
Pagan hit his seventh homer of the season on the second pitch of the game. Posey tied it at 2-all with his 17th homer in the sixth.
NOTES: St. Louis INF Daniel Descalso hit in the leadoff spot for just the sixth time this season. ... Holliday has seven homers and 21 RBIs in his last 23 home games. ... Lance Lynn (13-4, 3.40) faces Giants LHP Barry Zito (8-8, 4.27) in the second game of the four-game series Tuesday. ... The Giants have picked up LHP Jose Mijares from Kansas City on waivers.