"He's a competitive kid, he's never going to give in, he continues to work at it," Mets manager Terry Collins said of deGrom, who was pitching on six days' rest after a rainout before an off-day. "I don't know if it was the extra time off, he had great velocity tonight but location was off. Everything was up in the zone. Ball hanging, changeup up in the zone. He just didn't have his command, but you look up and he was still out there in the seventh inning."
Bruce had three hits, including his 22nd home run, and Reyes homered, doubled and scored twice as the Mets snapped a three-game losing streak. deGrom (9-3), who couldn't complete five innings in either of his first two starts at Busch, allowed eight hits in seven innings.
"Our guys kept putting up runs for me," deGrom said. "They'd get a lead then I'd give it up and they'd get another lead. I figured it was time to figure something out."
What deGrom figured out was that he had to get the ball down. He left pitches up and his slider was kind of flat, he said, but he was able to get the ball down and emerge with the win.
"I always have said this about pitchers ... when they dominate it's great and Jake has that capability every time he goes out there, but I feel like a pitcher's true job is to keep you in the ballgame and give you a chance to win," Bruce said. "Jake did that tonight. Gave up four solo home runs but otherwise kept us in it and gave us a chance. The ace isn't going to pitch like an ace every single time, but if he can keep you in it that's huge."
Randal Grichuk, Paul DeJong, Dexter Fowler and Jedd Gyorko all homered for St. Louis, which lost for the fourth time in six games. Cardinals starter Carlos Martinez (6-8) allowed five runs on seven hits over five innings, the All-Star's second straight start of allowing five runs in five frames.
"Just not in a good rhythm right from the top," Cardinals manager Mike Matheny said. "You'd see periods where it looked like he was starting to find it, but not for an extended period of time. … It's typically based on being able to control that sinker on the plate. That's his bread and butter. … That's when he's at his best and today it just looked out of rhythm."
MOMENTS THAT MATTERED Grichuk's gem: The Mets loaded the bases against Martinez in the first inning and pushed across a run when T.J. Rivera was a hit by pitch. The Cardinals escaped further damage, however, when Lucas Duda lined out to left fielder Grichuk, who then fired a strike to home plate to nab Asdrubal Cabrera.
Carpenter's blunder: Cardinals second baseman Matt Carpenter couldn't come up with a routine grounder off the bat of Yoenis Cespedes to lead off the seventh inning, and Cespedes scored two batters later on a double by Rivera. The error, which was Carpenter's eighth of the season and the Cardinals' 57th, helped the Mets take a 6-4 lead.
"Just didn't make it," Carpenter said. "This one bothered me."
QUOTABLE "The ball was jumping tonight. You could feel it even standing at second base, you could feel the wind in your face." -- Carpenter, on the six home runs at Busch Stadium
"I'm hitting the same amount. I think it has a lot to do with the velocity of pitches and people trying to hit fly balls. You can go into all kinds of different theories on the ball and how they're made, but I don't have any proof." -- Bruce, on the increase in home runs throughout MLB this season
SOUND SMART WITH YOUR FRIENDS • deGrom is the first pitcher to allow four home runs against the Cardinals and win since Robin Roberts in 1955. Preacher Roe of the Brooklyn Dodgers also accomplished that feat, back in 1953.
• The Cardinals hit back-to-back home runs for the third game this season and hit two sets of back-to-back homers in the same game for the ninth time in club history. The last time that happened was on May 2, 2016, against the Phillies. The last time the Cardinals hit four home runs in a game on two sets of back-to-back home runs that were all solo homers was May 7, 2012, at Arizona.
AFTER FURTHER REVIEW In the seventh inning, Bruce hit a line drive to right field, advancing Cespedes to third. Bruce attempted to take second and appeared safe, despite a tag by DeJong just as he slid into the base. After the Cardinals' challenged, however, the call was overturned for the first out of the inning.
WHAT'S NEXT Mets:Zack Wheeler (3-5, 5.01 ERA) takes the mound on Saturday with extra rest in his second start back from the DL. He lasted just 3 2/3 innings his last time out. First pitch at Busch Stadium is scheduled for 4:10 p.m. ET.
Cardinals:Adam Wainwright (9-5, 5.48) will be looking for his third straight win when he takes the mound at 3:10 p.m. CT. He won his last start despite giving up six runs in the fifth inning against the Marlins and has notched eight strikeouts in back-to-back starts for the first time since 2014.