Reliever Wily Peralta and the Kansas City Royals agreed to a $3.25 million, one-year contract Wednesday, ensuring one of the few bright spots in the team's shaky bullpen will be back next season.

The deal includes a $2.25 million salary next year and a $7 million mutual option for 2020 with a $1 million buyout. It replaces his previous contract, which contained a $3.25 million club option for 2019 with a $25,000 buyout.

Peralta also can earn a series of performance bonuses: $125,000 each for 35 and 45 games finished; $200,000 for 50 games finished; and $250,000 for reaching 30, 55, 85, 116 and 120 points with four points for each start, two for relief outings of two innings or more and one for a relief appearances of fewer than two innings.

The 29-year-old right-hander made a career-high 37 appearances last season, posting a 3.67 ERA and going 14 for 14 in save chances. He became the first Royals pitcher with a perfect save percentage and at least 10 saves.

In other roster news, right-hander Nate Karns chose free agency over an outright assignment to Triple-A Omaha and left-hander Jerry Vasto was claimed off waivers by the Cubs.