PITTSBURGH — Chris Archer came to Pittsburgh with much fanfare when he was acquired from the Tampa Bay Rays on July 31. Then he went 1-3 in his first eight starts with the Pirates.

It's almost certainly too late for the Pirates to make a playoff push this season, but on Wednesday night, Archer finally looked like the pitcher they thought they were getting at the non-waiver trade deadline. He pitched seven strong innings, and Pittsburgh completed a three-game sweep of the Kansas City Royals with a 2-1 win.

In his most impressive start since the trade, Archer (5-8) allowed one run on six hits with eight strikeouts and one walk. The right-hander made it out of the sixth inning for the first time in nine starts for the Pirates.

"The one thing I hang my hat on is making starts and pitching deep into ballgames," Archer said. "Giving up way more runs than I wanted to this year, but the thing that frustrates me the most is my average innings. It has to be the lowest of my career, but there's a correlation. The better you pitch, the deeper you pitch into games."

The Pirates remain marooned in fourth place in the NL Central despite a five-game winning streak that's moved them three games over .500.

"You play the game to win the game," Pirates manager Clint Hurdle said. "The games matter. They matter Game 1 to Game 150 to Game 151. There's nobody that suits up and wants to go out and not play well."

Felipe Vazquez allowed one walk in the ninth but earned his 35th save one day after he let a 1-0 lead slip away — his fifth blown save of the season. The Pirates went on to win 2-1 in 11 innings on Tuesday night.

Adam Frazier broke a 1-1 tie with a homer to right-centre with two outs in the fifth inning off rookie right-hander Heath Fillmyer (3-2). It was Frazier's ninth homer of the season, and it came two days after he fouled a ball off his knee.

The injury held Frazier out of the starting lineup Tuesday, although he entered in the ninth and played the final three innings. He started Wednesday at second base.

Fillmyer allowed two runs on eight hits with five strikeouts in seven innings for Kansas City, which has lost four straight after winning five of six.

"What do they say in baseball? You can win a game with 100 pitches and lose a game with one. That's kind of what happened today," Fillmyer said. "Not that I was perfect by any means, but you know what? I left one a little up. The guy got it, and it ended up being the difference."

Royals manager Ned Yost was pleased with how the 24-year-old battled.

"These are big-league starts," Yost said. "That's exactly what you ask for. Go out, keep us in the game, give us a chance to win. That's exactly what it is."

Colin Moran put the Pirates on the board with a single to left that scored Corey Dickerson, who was 2 for 3 with two doubles, in the second inning. Adalberto Mondesi tied it with a homer to centre, his 10th, in the third.

LINEUP CHANGE

Royals: OF Jorge Bonifacio was taken out of the starting lineup after going 0 for 4 with four strikeouts and one walk Tuesday. He entered as a pinch-hitter in the ninth and drew a walk.

TRAINER'S ROOM

Pirates: RHP Chad Kuhl underwent elbow surgery on Wednesday. No further details regarding the operation were provided. Kuhl was re-examined by Dr. David Altchek in New York on Tuesday. He last pitched on June 26.

UP NEXT

Royals: RHP Jorge Lopez (2-4, 3.93 ERA) is expected to start against the Detroit Tigers on Thursday. He left Kansas City's game against the Minnesota Twins on Sept. 14 with a left rib contusion sustained in a collision with 3B Hunter Dozier.

Pirates: RHP Ivan Nova (9-9, 4.07) takes the mound against the Milwaukee Brewers on Friday. In his past two starts, Nova has allowed one run on seven hits over 12 innings with 13 strikeouts and two walks.

___

More AP MLB: https://apnews.com/tag/MLB and https://twitter.com/AP_Sports