ST. LOUIS -- Matt Carpenter was asked about the last time he was part of a team that rapped out nine straight hits in an inning.
"T-ball, I believe," he said, laughing.
Carpenter and his St. Louis teammates became the first team in the majors to do it, giving them a cushion they eventually needed Friday night as they held on for a 12-8 win over Pittsburgh in the opener of a three-game National League Central showdown.
Joe Kelly (8-3) scattered eight hits over six innings to win his eighth straight decision dating to July 12. It was his third win in just over a month against the Pirates (81-59), which saw their lead over the Cardinals (81-60) drop to a half-game.
A.J. Burnett (7-10) lasted only three innings in his shortest start of the year, allowing six hits and five runs. Burnett was 3-0 with a 2.59 ERA in five previous outings this season against the Cardinals.
Burnett was long gone by the time St. Louis took batting practice against relievers Jared Hughes, Bryan Morris and Vin Mazzaro during a seven-run seventh.
Daniel Descalso started the outburst with a bloop double to left. Pete Kozma broke an 0-for-33 skid with a bunt single and Carpenter laced a double to right field to make it 6-1, chasing Hughes.
Jon Jay lined a two-run single to center, followed by Matt Holliday's second RBI double of the evening. After Carlos Beltran looped a single to right center, Yadier Molina answered a knockdown pitch from Hughes that drew warnings from plate umpire Tony Randazzo with a 415-foot three-run homer over the Cardinals' bullpen in left-center.
Mazzaro relieved Morris but yielded singles to Matt Adams and pinch-hitter Tony Cruz before retiring the last three hitters to end the 30-minute half-inning.
"It's fun to see nine hits in a row," Kelly said. "The guys were just killing the baseball."
It turned out that St. Louis needed most of that outburst to hold off Pittsburgh. Josh Harrison's two-run pinch-homer highlighted a four-run eighth that featured the ejections of pitcher John Axford and manager Mike Matheny after Axford drilled pinch-hitter Tony Sanchez with a 96 mph fastball.
The Pirates then added three in the ninth, forcing the Cardinals to use closer Edward Mujica to get the last out and bag his 36th save in 39 chances.
"I look at it as a very good win," Matheny said when asked if the ending perhaps changed his perception of it. "We didn't finish the game the way we wanted to, but it's still a good win."
Jay and Beltran each went 3-for-4, with Jay collecting three RBIs and Beltran two to headline St. Louis' 16-hit outburst. Carpenter scored three runs in a 2-for-3 night that gave him 98 hits at Busch Stadium, matching Albert Pujols (2008) for the most home hits in a season.
"I wasn't aware of it," Carpenter said of the feat. "That's pretty cool."
St. Louis reached Burnett for two runs in the first. Beltran lined a single to center, scoring Carpenter, and Andrew McCutchen let the ball skip past him for an error that sent Jay home.
The Cardinals pounded out four straight extra-base hits to open the third, expanding the lead to 5-0. Carpenter tripled into the right field corner, followed by consecutive doubles from Jay, Holliday and Beltran.
"It was a hard night," Pittsburgh manager Clint Hurdle said of Burnett's outing. "His location was up and it wasn't sharp. I think when we've seen him good, you see different."
The Pirates failed to take advantage of numerous scoring chances against Kelly, save for Pedro Alvarez's two-out RBI single in the fifth. They stranded 10 men during Kelly's stint, going 1-for-10 against him with men in scoring position.
Pittsburgh must now wait at least one more night for its 82nd win, which would give it its first winning season since 1992.
"It's not that big a deal for these guys," Hurdle said. "It's a mile marker on the road."
NOTES: St. Louis Friday activated RHP Jake Westbrook (lower back strain) from the 15-day disabled list. Westbrook pitched 1 1/3 innings out of the bullpen, allowing three hits and five runs, three of which were earned. ... Pittsburgh will start LHP Jeff Locke in Saturday night's game against Cardinals RHP Adam Wainwright. Locke was briefly demoted to Double-A Altoona on Aug. 28 because of his struggles since the All-Star break. He's 1-2, 6.18 in eight starts and hasn't won since July 21 in Cincinnati. ... Pirates LHP Wandy Rodriguez, who has been on the disabled list since June 11 with forearm tightness, made his first rehab start on Friday night in the International League playoffs for Indianapolis (Triple-A). Rodriguez pitched three innings, allowing three hits and two runs -- one earned -- with a strikeout.