NEW YORK -- Kyle Tucker had a three-run homer and a stolen base, Yordan Alvarez hit his 23rd home run and Framber Valdez pitched a gem to lift the Houston Astros over the New York Mets 9-1 Tuesday night.
Alvarez reached base five times, Yuli Gurriel also homered and Alex Bregman had three hits as Houston beat the Mets for the third time in a week. The AL West leaders swept a two-game series at home to begin a stretch of nine straight games against the Mets and Yankees. Houston is 5-2 in that string so far.
Valdez (8-3) allowed 6 hits over 8 scoreless innings, striking out 4 and inducing a bevy of groundball outs. The left-hander came in with the highest grounder rate in the majors at 68.9%.
Carlos Carrasco (8-4) had a second straight rocky outing against Houston, giving up six runs in 4 1/3 innings on 6 hits and 3 walks. The veteran right-hander allowed five runs to the Astros last Wednesday in a start cut short by lower back tightness.
Starling Marte doubled twice in a three-hit game, but the rest of the Mets had just five hits as the club matched a season high with its second straight loss. The NL East leaders narrowly avoided being shut out for what would have been the third time this season.
Astros right-hander Enoli Paredes was helped in the ninth by a stellar catch from left fielder Chas McCormick, who jumped and reached over the railing in foul territory for Eduardo Escobar's popup. Yet, Paredes gave up the shutout by walking James McCann (Arkansas Razorbacks( with two outs and the bases loaded.
Tucker crushed his 14th homer deep into the visitors' bullpen in right-center field in the first inning, scoring Alvarez and Bregman after Houston's 3-4 hitters each singled.
Tucker then led off the fourth with a 12-pitch walk, stole second for his 14th swipe of the season and scored on Jake Meyers' single.
The 25-year-old Tucker is on pace for 31 homers and 31 stolen bases. Houston hasn't had a 30-30 player since Carlos Beltran in 2004, the year he was acquired from Kansas City in June. The last player with 30 homers and 30 steals in a season solely with the Astros was Jeff Bagwell in 1999.
Alvarez connected off reliever Chasen Shreve in the fifth. Mets Manager Buck Showalter brought in the left-handed Shreve to face the lefty slugger, and Alvarez worked a nine-pitch at-bat before cranking a fastball over the fence in left-center.
Alvarez also had two singles and two walks. He homered three times during two games against the Mets last week, including twice against Carrasco. Only Aaron Judge (28) has more home runs than Alvarez.
BREWERS 5, RAYS 3 Brandon Woodruff struck out 10 over five innings in his return from the injured list, Andrew McCutchen and Luis Urias homered during a four-run sixth, and Milwaukee beat Tampa Bay. Woodruff (6-3) allowed one run and two hits.
BRAVES 5, PHILLIES 3 Matt Olson homered twice, Travis d'Arnaud also connected and Atlanta beat Philadelphia
CARDINALS 5, MARLINS 3 Dylan Carlson drove in a pair of runs and the St. Louis bullpen held Miami scoreless over four innings. Cardinals starter Dakota Hudson (6-4) went five-plus innings, allowing three runs. He was lifted after issuing a leadoff walk to Jorge Soler in the sixth.
NATIONALS 3, PIRATES 1 Patrick Corbin (4-10) matched a career high with 12 strikeouts, Yadiel Hernandez delivered a go-ahead two-run double, and Washington rallied in the eighth inning for the second straight game to beat Pittsburgh.
REDS 5, CUBS 3 Luis Castillo struck out 11 over six shutout innings in his first win in a month as Cincinnati beat Chicago. Castillo (3-4) allowed 5 hits and walked 3 while throwing a career-high 123 pitches.
ROCKIES 7, DODGERS 4 Randal Crichuk and Elias Diaz hit home runs and host Colorado tagged Clayton Kershaw for 6 runs and 9 hits in 4 innings to beat Los Angeles.
YANKEES 2, ATHLETICS 1 JP Sears stretched his big league scoreless streak to 12 2/3 innings and won his second spot start, pitching New York over Oakland for its 15th win in 19 games. Sears (3-0) limited the A's to three hits in 5 2/3 innings, struck out 1 and walked 1.
BLUE JAYS 6, RED SOX 5 Vladimir Guerrero Jr. hit a game-ending single in the ninth inning to complete Toronto's rally over Boston. The Blue Jays trailed 5-4 when pinch-hitter Alejandro Kirk singled to begin the ninth against Tyler Danish (2-1). Hansel Robles gave up Bo Bichette's tying RBI single, and Guerrero followed with his base hit.
GUARDIANS 3-0, TWINS 2-6 Amed Rosario's clutch two-run single in the eighth inning rallied Cleveland past Minnesota in the first game of a doubleheader, snapping the Guardians' five-game losing streak. In the nightcap, Jorge Polanco drove in three runs in his first game back from the injured list, rookie Josh Winder pitched six stellar innings, and Minnesota earned the split.
RANGERS 8, ROYALS 3 Marcus Semien hit a home run and drove in four runs, Corey Seager hit a two-run double and Jon Gray pitched seven effective innings as Texas handed Kansas City its fourth consecutive loss.