The Marlins snapped a three-game losing streak while the Mets had a four-game winning streak halted.
Smith (3-5) allowed one run on three hits and two walks while striking out eight in the second-longest outing among his 12 major league starts.
Three Miami relievers combined for 2 1/3 innings of one-hit ball. Brad Ziegler got the final three outs in a non-save situation.
Smith factored into the Marlins' three-run second inning. Miami already led 1-0 thanks to Rojas' single and had runners on first and second when Smith laid down a one-out bunt and ended up safe when Adrian Gonzalez could not corral the errant throw by Mets third baseman Jose Reyes.
One out later, Realmuto laced a two-run single to center.
The newest member of the Mets produced the team's only run in the bottom of the second. Jose Bautista, who was signed just before the game, doubled in his first at-bat for New York and eventually scored on a sacrifice fly by Tomas Nido.
The Marlins added some insurance in the eighth, when Derek Dietrich hit a two-run homer. Realmuto (three hits) and Dietrich combined for five of Miami's nine hits.
Mets starter Zack Wheeler (2-4) took the loss after allowing the three runs (one earned) on seven hits in six innings. He issued no walks while striking out nine. Wheeler retired 13 of the final 15 batters he faced following Realmuto's RBI single.
Bautista, who arrived about half an hour before first pitch, finished 1-for-3 while starting in left field for the first time since 2009. The 37-year-old, who was released by the Atlanta Braves on Sunday, is expected to start against left-handers.
--Field Level Media
Miami | NY Mets | |
Caleb Smith | Player | Zack Wheeler |
Win | W/L | Loss |
6.2 | IP | 6.0 |
8 | Strikeouts | 9 |
3 | Hits | 7 |
1.35 | ERA | 1.50 |
Miami | NY Mets | |
J.T. Realmuto | Player | Adrian Gonzalez |
3 | Hits | 1 |
2 | RBI | 0 |
0 | HR | 0 |
3 | TB | 2 |
.600 | Avg | 1.000 |