Javy Guerra kept closer Kyle Barraclough's struggles from costing Miami a victory Monday night.
Guerra cleaned up a ninth-inning mess created by Barraclough, getting Yadier Molina to hit into a double play to end the Marlins' 2-1 victory over the St. Louis Cardinals.
"It was important to be ready," Guerra said. "I think overall I went in there prepared and got the right results. It went well."
After Wei-Yin Chen (4-8) pitched 5 2/3 innings of one-hit ball, Miami led 2-0 going into the ninth and handed the game off to Barraclough.
Paul DeJong and Harrison Bader opened the inning with hard-hit singles, then Yairo Munoz walked. Pinch-hitter Kolten Wong struck out looking, but Matt Carpenter drew a bases-loaded walk to make it 2-1 and end Barraclough's night.
"Carp works the walk and then you've got the guy that you want up there every night in that situation with Yadi," Cardinals interim manager Mike Shildt said.
Guerra got Molina, a career .309 hitter with the bases loaded, to bounce into a double play for his first save since Sept. 27, 2014 while with the Chicago White Sox.
"He saved (21 of 22) games for me in LA (in 2011)," Mattingly said. "I've seen him be in bases-loaded jams with nobody out and get out of them, so I know he's a guy who's not going to panic in that spot."
Barraclough had blown his last three save chances, allowing 10 runs in 2 1/3 innings.
His role could be in jeopardy.
"I think he's healthy," Mattingly said. "If he's not healthy, he's not telling us, which I don't think is the case, but it's something that obviously you're not going to sit here and make any kind of decisions quickly after a game. We just won a game and we wouldn't do anything without talking to him about it anyway."
Starlin Castro had two hits, including his ninth home run for the Marlins, who returned home after a six-game winless road trip.
Former Miami All-Star Marcell Ozuna returned for his first game at Marlins Park after being traded to St. Louis in the offseason and went 3 for 4 tying his season-high with hits in a game.
"It was good to see Marcie come home," Shildt said. "He was happy to get home. He felt good about it. He likes it here and it was good to see he was received warmly as you would expect."
Luke Weaver (6-10) allowed two runs and seven hits in six innings for St. Louis (58-55).
Derek Dietrich doubled to begin the game for the Marlins and scored on a check-swing hit by Brian Anderson.
Castro's home run to left in the fourth gave Miami a 2-0 lead.
With one on and one out in the seventh, Munoz grinded out a 14-pitch at-bat, but Tayron Guerrero prevailed with a groundout. Pinch-hitter Greg Garcia struck out to end the inning.
Ozuna beat out an infield hit in the eighth, giving Jedd Gyorko an at-bat with runners on first and second with two outs. Drew Steckenrider was able to get out of the jam as Gyorko flew out to deep center.
Ozuna was given a video tribute during the game, and he tipped his cap to acknowledge the appreciation.
"That was impressive for me," Ozuna said. "I didn't even know they were going to do that for me. I appreciated it."
Cardinals: OF Tyler O'Neill (groin) was placed on the 10-day disabled list retroactive to Aug. 4. ... RHP Adam Wainwright (elbow) is planning on throwing a bullpen session either Tuesday or Wednesday.
Cardinals: RHP Miles Mikolas (11-3, 2.75 ERA) was scheduled to start the second game of the series Tuesday night. Mikolas has allowed three runs or fewer in eight consecutive starts.