NEW YORK -- Michael Wacha had combed his hair and dressed in a button-down shirt, all ready at his locker not long after a beer shower to celebrate his first major-league victory.
Just as he did on the mound, the St. Louis rookie got cleaned up quick.
"It's an unbelievable feeling," Wacha said. "Hopefully, there's more to come."
Matt Holliday had three hits and the NL Central leaders took full advantage of a crucial error by new Mets first baseman Daniel Murphy, who was shifted over from second after slumping Ike Davis got demoted to the minors Sunday.
David Freese extended his career-best hitting streak to 20 games, longest in the majors this season, and Wacha (1-0) even knocked in a run with a groundout for his first RBI.
The 21-year-old righty walked three batters and fell behind 2-0 in a 37-pitch first inning but worked his way through it and soon settled in.
"The first inning was rough," he said. "Just didn't have any command over my pitches. After I got out of the first I just told myself, just flush it out and just forget about it and just go out and attack the hitters the next couple of innings."
Omar Quintanilla hit a home run for the Mets, who gave up a major league-high seven unearned runs and lost for the seventh time in eight games since a season-best five-game winning streak that included a four-game sweep of the Subway Series against the New York Yankees. They dropped 13 games under .500, their lowest mark of the year.
Jeremy Hefner (1-6) had a 2-1 lead until St. Louis scored five unearned runs in the fifth, capped by Craig's fifth homer. The outburst began when Jon Jay reached on a leadoff grounder to Murphy, who knocked it down on his backhand but rushed a high, off-balance throw to Hefner covering first.
"It's a groundball that I should have handled, but I booted it," Murphy said. "It's not my first time playing first base, and it gave them life."
Pete Kozma doubled and Hefner slammed down the rosin bag after Wacha's grounder to shortstop tied the score. Matt Carpenter walked, Yadier Molina put the Cardinals ahead with an RBI groundout and Holliday reached on an infield single before Craig drove an 0-1 pitch to left-center for a 6-2 advantage.
At his best in clutch situations, Craig came in batting .400 with runners in scoring position -- the same average he had last year.
"You just can't say it's a fluke when a guy does what he's done," Cardinals manager Mike Matheny said. "It's for real. He's just got a knack for getting it done."
St. Louis, which owns baseball's best record at 42-22, added two in the seventh after Kirk Nieuwenhuis misplayed a deep fly to right for an error. Holliday had an RBI single and reliever Josh Edgin, just recalled from Triple-A Las Vegas, walked Jay with the bases loaded to force in another run.
"Their lineup is a test," Mets manager Terry Collins said. "They hit to all fields. They hit to all fields with power. They stay focused pitch after pitch."
Craig made a painful-looking catch in the third when he fell at the base of the wall, where his neck and the back of his head snapped back and hit the fence.
"I feel all right. Probably going to be a little sore tomorrow, but not a big deal," Craig said. "It definitely jarred me a little bit."
Wacha, drafted 19th overall a year ago out of Texas A&M, was making his third major league start after an impressive outing against Kansas City and a shaky one vs. Arizona.
Pitching on the road for the first time, he gave up a home run to his second batter. Marlon Byrd hit a sacrifice fly and the bases were loaded when Nieuwenhuis hit a grounder up the middle that appeared headed for center field and a two-run single that would have given New York a 4-0 lead.
Kozma, however, was positioned perfectly at shortstop and made a nice play to end the inning.
It was the sort of play that often goes unnoticed, but it stopped the Mets in their tracks. Wacha did not walk another batter and yielded five hits over six solid innings before Randy Choate and Keith Butler finished up.
"He just was out of rhythm and every pitcher goes through it," Matheny said. "Some of `em are able to still end up in the sixth inning."
New York did not manage a hit after Jordany Valdespin's leadoff single in the fifth. With Davis sent down, Valdespin is getting an opportunity to play regularly at second base, his natural position.
- Cardinals RF Carlos Beltran, a former Mets star, was rested to give him back-to-back days off. The team was off Monday and Beltran traveled home to attend commencement ceremonies for the first graduating class of his Carlos Beltran Baseball Academy in Puerto Rico.
- RHP Jake Westbrook (elbow inflammation) is scheduled to come off the disabled list and start Friday night in Miami.
- Carpenter's 18-game hitting streak ended.
- Mets RHP Matt Harvey (5-0, 2.10 ERA) threw his bullpen session and is on target to make his next scheduled start in the series finale Thursday afternoon against RHP Adam Wainwright (9-3, 2.34). Harvey left Saturday's start after seven effective innings with tightness in his lower back.