HOUSTON -- The Houston Astros have power throughout the lineup, and when they hit more than one home run they are difficult to beat.
That was on display again Wednesday night when Preston Tucker homered twice and drove in three runs and Evan Gattis added a solo shot to give the Astros a 4-2 victory over the Boston Red Sox.
The Astros lead the majors with 132 home runs and are 34-5 when hitting multiple homers.
"We ... scored all of our runs on the home run, which we can do that from time to time," manager A.J. Hinch said. "We've got a little bit of power."
Collin McHugh (11-5) allowed seven hits and two runs in seven innings to help Houston extend Boston's losing streak to a season-high-tying seven games. Luke Gregerson pitched a perfect ninth for his 20th save.
Tucker made it 1-0 with his homer in the first, Gattis hit his in the fourth and Tucker's 2-run shot pushed the lead to 4-0 in the fifth.
"Tuck ... hits the ball really hard," Hinch said. "His hand strength is really good and when he's using the left-center field -- he can always pull the ball -- but when he's using left-center field he's a pretty complete hitter."
Boston starter Joe Kelly (2-6) yielded six hits, including a career-high three homers, and four runs with six strikeouts in 5 1/3 innings in his first start since June 23 after being recalled from Triple-A Pawtucket.
Dustin Pedroia and Xander Bogaerts drove in a run each for Boston, which went 2 for 10 with runners in scoring position.
"We just haven't put it together, and that is basically it," Pedroia said. "When we get guys on, we have to find a way to get them in."
Houston rookie Carlos Correa, the top overall pick in 2012, singled in the fifth inning to extend his hitting streak to a career-long seven games.
Tucker's first homer sailed into center field with one out in the first inning. Gattis made it 2-0 with his home run to the Crawford Boxes in left field in the fourth.
The Red Sox didn't get a hit until Hanley Ramirez singled to start the fifth inning. He advanced to second on a passed ball before McHugh plunked Alejandro De Aza. But he retired Shane Victorino and Mike Napoli grounded into a double play to end the threat.
Jose Altuve singled with two outs in the fifth before Tucker launched his second home run over the low fence in right field to extend the lead to 4-0.
Blake Swihart singled to start the sixth and scored on a double by Pedroia cutting the lead to 4-1.
Brock Holt singled before an RBI single by Bogaerts got Boston within 4-2. But McHugh settled down after that to retire the next three batters and limit the damage.
Boston had a chance to cut the lead in the seventh when Victorino and Napoli hit consecutive singles with no outs before Swihart bunted into a force out. But McHugh sat down the next two batters to leave the Red Sox empty-handed and end his night.
"You've got to make good pitches when it counts," McHugh said. "When you're getting up there in pitch count, which I was in the seventh, it gets a little bit harder. You start having to catch your breath a little bit and really try and focus."
Red Sox: RHP Clay Buchholz had a platelet-rich plasma injection in his right elbow from Dr. James Andrews on Wednesday. Buchholz was placed on the 15-day DL with a strained flexor muscle on July 11. He will be shut down for a while and the Red Sox aren't sure when he will resume baseball activities.
Astros: INF Jed Lowrie, who has been out since April 27 because of a torn ligament in his thumb, went 0 for 2 in the first game of a rehabilitation assignment with Double-A Corpus Christi on Wednesday. The Astros expect him to play several games there before he is activated.
Boston's Wade Miley opposes rookie Lance McCullers when the series wraps up on Thursday. Miley took a no-hit bid into the seventh inning in his last start on Friday against the Angels but did not factor into the decision.