Skip Schumaker went 2-for-3 with a solo homer and Allen Craig collected two hits and knocked in a run as the St. Louis Cardinals edged the New York Mets, 5-4, in the opener of a three-game set at Busch Stadium.
Matt Carpenter drove in a pair of runs and Yadier Molina had an RBI for the Cardinals, who won for just the second time in their last seven games.
Joe Kelly (5-6) earned the win after allowing just two runs on five hits with four strikeouts over 6 2/3 innings.
Jason Motte recorded the final two outs in the eighth inning and stranded a runner in the ninth to earn his 33rd save of the year.
Kelly Shoppach and Daniel Murphy each stroked two-run homers for the Mets, who fell for the second time in nine tries.
Collin McHugh (0-1) allowed four runs on six hits over four innings to absorb the loss.
St. Louis jumped out to an early 1-0 lead in the first after Jon Jay tripled, then scored on Carpenter's ground out.
The Cardinals added a pair in the third and one in the fourth.
In the third, Kelly doubled to left-center field, moved to third on a sacrifice bunt then scored on Carpenter's sacrifice fly.
Matt Holliday and Craig followed with a pair of singles to put runners at first and second for Molina, who smoked a single to left field to score Holliday.
Schumaker's leadoff homer to right field in the fourth extended St. Louis' lead to 4-0.
Shoppach's two-run blast in the seventh cut the Mets' deficit to 4-2. Mike Baxter worked a two-out walk before Shoppach crushed Kelly's 0-1 offering over the left-field wall.
The Cardinals pushed one more across in the seventh when Craig stroked a single to right-center field to plate Jay. Jay was hit by a pitch to open the inning and moved to second on a Holliday base hit before coming around on Craig's single.
After Ruben Tejada singled to start the eighth, Murphy followed with a shot into right field to bring the Mets within 5-4 before a bit of controversy in the final frame.
In the ninth Andres Torres ripped a grounder past a diving Carpenter, and quickly turned it into a double after sliding into second base safely on a bang-bang play.
But the Cardinals appealed that Torres missed first base and he was called out. Torres put up no argument, and Terry Collins argued briefly with first base umpire David Rackley to no avail.
"I've never seen it called. Not in the big leagues like that," Mets manager Terry Collins said.
"It's one out and nobody on rather than no one out and a guy on second," Motte said. "They can bunt him over, they have a lot of options right there."
Motte then struck out pinch-hitter Ronny Cedeno and, after walking Tejada, got Murphy to fly out to right field to end the game.
The teams have split season series in 2010 and 2011, with the Cardinals last winning, five games to four, in 2009. New York won three of four games in 2012 when the teams played at Citi Field from June 1-4 ... Kelly's last win as a starter came Aug. 14 against the Arizona Diamondbacks ... The Mets are batting a major league-worst .189 with runners in scoring position since Aug. 1.