ST. LOUIS -- Xander Bogaerts knocked in both runs and the Red Sox snapped a three-game losing streak, edging the St. Louis Cardinals, 2-1.
Bogaerts came to the plate in the top of the ninth with the bases loaded and drove the first pitch from Cardinals closer Trevor Rosenthal to center, scoring Yoenis Cespedes from third.
Koji Uehara closed out the game in the bottom of the inning with his 23rd save of the season despite allowing two hits.
The win capped a successful homecoming for new Red Sox starter Joe Kelly, who faced his former club just six days after being traded away.
Kelly didn't pick up the win -- that went to Junichi Tazawa for a perfect eighth inning -- but limited the Cards to a single run over seven innings, allowing just three hits. He fell behind early, allowing a run in the first, but added six scoreless innings thereafter.
After wasting a leadoff double from Mike Napoli in the second and failing to take advantage of an leadoff infield single from Kelly in the third, the Sox pulled even in the fourth and did so after two were out.
Daniel Nava drove a single to right before Bogaerts hit a deep fly to left. Outfielder Matt Holliday drifted back to the fence almost casually, perhaps feeling that the ball was headed out.
Instead, as Holliday lifted his arm, the ball clanged off his glove and rolled away for a double as Nava, running with two outs, scored all the way from first base.
The Cardinals didn't take long to push a run across their former teammate.
Matt Carpenter doubled to right to lead off the bottom of the first, took second on a groundout to the right side by Kolten Wong and scored on a single to right by Matt Adams.
STAR OF THE GAME: Joe Kelly
Making his Red Sox debut, against his former team, Kelly was terrific, managing his emotions while limiting the Cards to a single run over seven innings.
HONORABLE MENTION: Xander Bogaerts
Bogaerts drove in both Red Sox runs -- and saved another with his glove. His RBI double in the fourth scored the first run and his sacrifice fly in the ninth proved the difference. Meanwhile, a diving stop behind the second base bag in the second stole a hit and prevented the Cards from taking a 2-0 lead.
GOAT OF THE GAME: Trevor Rosenthal
The Cardinals closer entered a tie game in the top of the ninth but allowed two hits, and, after an intentional walk to load the bases, a sacrifice fly to Bogaerts that spelled the difference.
TURNING POINT: In the sixth, Kelly walked Matt Holliday and a groundout moved him to scoring position with one out. But he got a great catch from Yoenis Cespedes in left for the second out before retiring A.J. Pierzynski on an infield pop-up to keep the game tied.
BY THE NUMBERS: Kelly became the first pitcher to throw at least seven innings and allowed one run or fewer in his Red Sox debut since Hideo Nomo, who no-hit Baltimore in his first Red Sox start on April 4, 2001.
QUOTE OF NOTE: "I thought he wanted to get ahead of me with a fastball so he could go to his off-speed pitches, so I just went up there and geared up for the fastball.'' - Xander Bogaerts on his game-winning sacrifice fly.