MIAMI (AP) - Rafael Furcal and pinch-hitting pitcher Joe Kelly drove in runs in the 10th inning and the St. Louis Cardinals, who scored four runs in the top of the ninth, held on to beat the Miami Marlins 8-7 on Monday night for their fourth straight victory.
Yadier Molina hit a two-run homer off Heath Bell in the ninth to cap the four-run inning and tie the game at 6.
In the bottom of the 10th, John Buck hit an RBI single off Jason Motte to bring the Marlins within 8-7. Motte got Jose Reyes to fly out with two on and two outs for his 15th save in 19 chances.
Victor Marte (2-1) pitched two-thirds of an inning for the win.
After halting a six-game losing streak with a win Sunday, the Marlins have lost 16-of-19.
Tyler Greene singled with one out off Chad Gaudin (1-1) in the 10th before Furcal's RBI double to left. With the bases loaded, Kelly, who was batting for Marte, beat out an infield single for an 8-6 lead.
The Marlins led 6-1 in the eighth before Hanley Ramirez's two errors on a ground ball by David Freese allowed the Cardinals to cut the deficit to 6-2.
Bell came on to pitch the ninth and allowed an RBI single to Carlos Beltran and a sacrifice fly to Allen Craig to pull St. Louis within 6-4. With one on and two outs, Molina blasted a 2-0 pitch over the fence in left to tie the game. It was Molina's 11th home run of the season and second in as many days.
The bottom of the ninth was highlighted with lineup controversy.
After Ramirez singled with one out, Marlins manager Ozzie Guillen came out of the dugout to dispute the Cardinals' lineup. Following a 10-minute discussion among the umpires, they ruled in Guillen's favor leaving Cardinals manager Mike Matheny in disagreement and prompting Tony Cruz to come off the bench to replace Craig at first base.
Matheny thought the pitcher's place in the order was the seventh spot whereas Guillen believed it was the fifth, which ended up being where Kelly delivered his pinch hit.
Reyes drove in runs with a double in the third and a single in the fifth.
The Cardinals pulled within 2-1 as Freese scored on a passed ball.
Miami starter Ricky Nolasco went 62â„3 innings allowing one unearned run and striking out four.
Miami added to their lead in the seventh on consecutive bases-loaded walks issued by Eduardo Sanchez. Logan Morrison's groundout and Greg Dobbs' RBI single pushed the lead to 6-1 as the Marlins batted around scoring four runs on two hits and four walks.
Cardinals starter Jake Westbrook allowed two runs in six innings.
Notes: Buck went 2-for-3 and scored three runs as he registered his second multi-hit game of the season and first since April 12 at Philadelphia. ... Freese is 10-for-24 (.417) in his last six games. ... New Orleans Saints Pro Bowl tight end Jimmy Graham was in attendance. ... St. Louis will send RHP Kyle Lohse (6-2, 2.85 ERA) to the mound today to face RHP Carlos Zambrano (4-5, 4.01 ERA), who is 12-6 in 31 appearances against the Cardinals.