The deal had been held up much of Monday due to a medical issue with one of the players involved, sources told ESPN.
Bruce, 29, has spent his entire nine-year career with the Reds. He leads the National League in RBIs this season with 80 to go along with 25 homers and a .265 batting average. He becomes the first player traded during the season while leading the league in RBIs since the stat became official in 1920, according to Elias Sports Bureau.
Bruce is a lifetime .249 hitter with 233 home runs and 718 RBIs.
In the trade, the Reds get 22-year-old second baseman Dilson Herrera and 19-year-old left-hander Max Wotell. Herrera batted .211 in 103 plate appearances with the Mets last season but is hitting .276 with 13 homers and 55 RBIs in Triple A this season.
Wotell, drafted by the Mets in the third round of the 2015 draft, is 3-1 with a 4.25 ERA in six starts for Kingsport of the rookie league.
Outfielder Brandon Nimmo had been mentioned as going to the Reds, but he will stay put, according to ESPN's Adam Rubin.
Bruce's contract has a team option next season worth $13 million, with a $1 million buyout.
Why did the Mets need Jay Bruce? For starters, they rank last in the majors in batting average with runners in scoring position at .206.
For each major deadline deal, we give you our report card — then ask you to vote on which team hit the jackpot and which team got the short (or at least shorter) end of the stick.
The Mets were not on Bruce's no-trade list, which included the Red Sox, Rays, Yankees, Blue Jays, Diamondbacks, Marlins, A's and Twins.
The Mets boast one of the best pitching staffs in baseball, led by Noah Syndergaard and Jacob deGrom, but they are only 13th in the NL in runs scored with 381. Last season, they were in a similar position and acquired Cespedes, who sparked them to the World Series.
The slugger is currently sidelined, however, with a quad injury.
Bruce homered in five straight games in late July, a career best. One downside to him as a player has been his career-long penchant for following a hot streak with an incredibly cold one.
The Reds tweeted thank-you to Bruce.
Thank you, Jay, for all you've done for the Reds and our community. We wish you, Hannah & Carter all the best in NY. pic.twitter.com/O8ThOT4oZU
— Cincinnati Reds (@Reds) August 1, 2016
Cincinnati is into its second year of rebuilding, trading any high-priced veteran it can. The Reds dealt starters Johnny Cueto and Mike Leake, All-Star Home Run Derby winner Todd Frazier and closer Aroldis Chapman in the past year.
They tried to trade second baseman Brandon Phillips to the Nationals, but he used his option to block the deal. They also put together the framework of a three-team deal that would've sent Bruce to Toronto in the offseason, but that fell through.
Information from The Associated Press was used in this report.