In exchange for Garcia, the Astros sent outfielder Bryan De La Cruz and right-hander Austin Pruitt to the Marlins.
It's the second straight day the AL West-leading Astros have swung a trade to add bullpen help. On Tuesday, Houston acquired Kendall Graveman and Rafael Montero from the Mariners.
Garcia, 30, has 15 saves for the Marlins this season and is 3-7 with a 3.47 ERA. He has struck out 35 and walked just five batters in 36⅓ innings pitched. He has a 3.41 ERA over seven major league seasons.
De La Cruz, 24, is hitting .324 with 12 home runs and 50 RBIs for Triple-A Sugar Land this season.
Pruitt, 31, is 0-1 with a 6.75 ERA in two major league appearances for the Astros this season.