JUPITER, Fla. -- The Mets and Cardinals traded zeroes until the eighth inning, when Jordany Valdespin's single off Edward Mujica plated Travis d'Arnaud, and New York added a pair for Sunday's 3-0 win over St. Louis.

In his best spring start to date, Shaun Marcum tossed 3 2/3 scoreless innings for the Mets. He limited the Cardinals to one baserunner and struck out two. He entered the game having allowed four earned runs in his first 3 1/3 innings of Grapefruit League play.

"Today I mixed in some curveballs -- I was surprised, actually, with how well I was able to keep them down in the zone and throw them for strikes," Marcum said. "But the main thing was locating my fastball and keeping it down in the zone. The hit I gave up ... I was trying to bounce that one, and that's what happens when I don't locate it -- it gets hit."

Cardinals starter Jaime Garcia was similarly impressive, scattering four singles over five scoreless innings. He threw 65 pitches, as well as a few more on the bullpen mound afterward to increase his pitch count. He had gone only three innings in his previous appearances

"It was a good game. I felt good," Garcia said. "The defense did a good job behind me. The catcher did an unbelievable job. It was a good one."

Pedro Feliciano, Scott Atchison and Scott Rice followed Marcum with scoreless relief appearances.

Trevor Rosenthal took the mound for St. Louis for the first time since being plucked from the fifth-starter competition and converted to a reliever. After John Gast pitched a scoreless sixth, Rosenthal struck out the side in the seventh. He registered 100 mph several times.

Up next: David Freese is expected to play third base for the first time in a week when the Cardinals face the Yankees in Tampa on Monday. Freese's only appearances since bruising his tailbone last Monday have been as a designated hitter. Lance Lynn will start against Hiroki Kuroda in the game, which is scheduled to begin at 12:05 p.m. CT and will be televised on ESPN.

Bench coach Mike Aldrete will serve as acting manager with Mike Matheny in St. Louis undergoing back surgery.