Salvador Perez hit his fourth career grand slam and the Kansas City Royals beat the Seattle Mariners 6-4 on Thursday night.

Perez’s 35th home run fueled a five-run sixth inning during which the team batted around and helped the Royals snap the Mariners’ three-game winning streak.

It was the catcher’s fifth homer in seven games on Kansas City’s current road trip. The Royals have won five of those seven.

"What's so impressive is that it doesn't surprise you when he does it," Royals manager Mike Matheny said.

CLICK HERE FOR MORE SPORTS COVERAGE ON FOXNEWS.COM

Matheny said the grand slam might not even have been his most impressive play in a game filled with defensive gems for Kansas City. Perez finished off a play at home plate in the first inning that started with Kyle Seager's double. Michael A. Taylor tracked down the ball in the gap and threw it to Nicky Lopez. The shortstop fired the relay home to Perez, who dove and caught Haniger on the arm as he tried to score from first.

Taylor also made a great running catch over the shoulder in the fourth inning to hamper a rally, and Andrew Benintendi robbed Jarred Kelenic of a home run in the seventh when he pulled the ball back from the bullpen with a leaping grab.

Even after those plays, Matheny was still talking about that relay play in the first.

"It was just all the pieces," Matheny said. "Those are game changers. That was just the beginning of a special defensive win."

The Mariners took a 1-0 lead in the first inning on Jake Fraley’s bases-loaded walk, his fourth of the year. Kyle Seager made it 2-0 with a solo homer in the fifth, tying his career high with his 30th home run.

Starter Brad Keller grabbed the area behind his right elbow and called for a trainer after the homer. He left the game with what the team called posterior right shoulder discomfort and will be re-evaluated Friday. Reliever Joel Payamps entered the game, and after striking out Ty France, he gave up a single to Abraham Toro and a homer to Fraley, making it 4-0.

The Royals answered in the sixth with three consecutive hits off starter Yusei Kikuchi to begin the inning. They cut the lead to 4-1 on Whit Merrifield’s RBI single. Kikuchi loaded the bases with a walk and then was replaced with reliever Joe Smith (2-2).

Perez said he was not surprised by Smith's appearance.

"I think they brought him in because in the past I was 0 for 7 against him with five strikeouts, or maybe six strikeouts," Perez said. "... That means you got to do it."

Perez's no-doubt homer off the left-field scoreboard made it 5-4: "I hit it pretty good. Sometimes you hit the ball hard and you know it's a homer."

Emmanuel Rivera added an insurance run in the seventh, reaching on second baseman Toro’s fielding error, stealing second and scoring on Lopez’s single.

Ervin Santana (1-1) pitched two innings with two strikeouts for the win.

Perez and Seager lead the AL with 14 home runs apiece since the All-Star break. Perez is now tied with Gary Gaetti for fifth-most home runs in a season in Royals history.

The Mariners, who have won six of their last nine despite the loss, left eight runners on base and were 2 for 8 with men in scoring position.

"Offensively I thought we had a lot of chances to put a lot more runs up on the board," Mariners manager Scott Servais said. "It wasn't our best night of situational hitting with people standing on third."

VETERAN ARM

Seattle claimed LHP Sean Doolittle off waivers from Cincinnati, adding a veteran arm to its bullpen to help with its wild-card run. Doolittle, a 34-year-old former closer for the Oakland Athletics and Washington Nationals, has 446 career relief appearances since 2012, 10th among all active left handers, and 112 saves. He’s 3-1 this season with a 4.46 ERA in 45 appearances.

The Mariners optioned RHP Keynan Middleton to Triple-A Tacoma to make room on the roster.

TRAINER’S ROOM

Royals: Keller said he was stiff and sore after the game. He started feeling pain in his shoulder in the fourth inning and tried to pitch through it. "It was like a pain that wouldn't go away," he said. ... RHP Josh Staumont went to the injured list with an undisclosed ailment, likely meaning he has entered COVID-19 protocols. Matheny said he could not give a reason for Staumont’s absence. The team selected RHP Scott Blewett from Triple-A Omaha to replace him on the roster.

Mariners: LHP Justus Sheffield (left forearm strain) worked out of the bullpen during his rehab assignment Thursday night and will be used as a reliever when he returns to the lineup. Servais said he’s happy with the starting rotation the Mariners are fielding as they make a wild-card run, and believes Sheffield can make a valuable contribution in a relief role. He likely will have at least one more rehab appearance at Triple-A Tacoma before returning to the team. … CF Kyle Lewis (right meniscus surgery) could begin a rehab assignment in Tacoma as soon as this weekend, Servais said.

UP NEXT

Royals: LHP Kris Bubic (4-6, 4.94) returns to the mound after earning his first road win since May 28th last Saturday.

Mariners: Seattle is 11-6 with rookie RHP Logan Gilbert (5-5, 4.13) in the starting lineup.