Vin Mazzaro tossed six scoreless innings, Jeff Francoeur knocked in two runs and the Kansas City Royals survived a couple of throwing miscues in the ninth inning to escape with a 3-2 victory over the St. Louis Cardinals in the opener of a three-game set at Busch Stadium.
Jonathan Broxton worked a scoreless ninth inning to earn his 16th save of the year and the 100th of his career, but the Royals nearly blew the lead.
Tyler Greene legged out an infield hit with two outs and then stole second. The throw from catcher Humberto Quintero was low and dribbled toward shortstop, allowing Greene to advance to third. The throw to third from second baseman Chris Getz was wide, however, and third baseman Mike Moustakas chased the ball down and threw home, where Quintero used his right foot to block the plate and applied the tag to end the game.
"I screamed 'No' so loud I lost my voice for like three minutes," Royals manager Ned Yost said about Getz' throw to third. "Just by a stroke of luck it hit that rail into the opening of the dugout and bounced back out and [Moustakas] made a perfect throw."
Mazzaro (3-1) scattered five hits and a walk with four strikeouts.
Jarrod Dyson added two hits and an RBI for the Royals, who won their fourth straight game.
Kyle Lohse (6-2) allowed three runs on 10 hits and two walks over seven innings, snapping a streak of seven straight starts without a loss.
"It was a battle tonight for me. I didn't have very good command of anything," said Lohse. "For as many hits as I gave up, to give up only three runs was an accomplishment tonight."
Matt Adams had two hits, an RBI and run scored for St. Louis, which has dropped three of its last five.
After stranding a runner on second in the first inning, the Royals broke through in the second when Alcides Escobar slapped a two-out double to right that landed just under the glove of a diving Allen Craig. Escobar stole third and came home on Dyson's infield single.
Alex Gordon led off the third frame with a double, advanced to third on a Getz sacrifice bunt and crossed the plate on Francoeur's two-out single to give Kansas City a two-run advantage.
The Cardinals then left a man on third in the home third and a runner on second in the fifth before the Royals made it a 3-0 game in the seventh when Francoeur followed back-to-back singles by Getz and Eric Hosmer with a sacrifice fly to center field.
David Freese led off the bottom of the seventh with a single off Roman Colon and rounded the bases two batters later on Adams' double to center field.
Shane Robinson's pinch-hit single scored Freese.
Cardinals center fielder Carlos Beltran's stolen base in the second inning was the 300th of his career. With the steal, he became the first switch-hitter to hit 300 home runs and steal 300 bases...Kansas City improved to 10-9 in one- run games this season...St. Louis leads the all-time series between the teams, 38-29.