Jon Heyman of CBSSports.com reported the deal is for $1.5 million, with another potential $600,000 in performance bonuses.
Perez is the second pitcher re-signed by the club, after starter Hisashi Iwakuma received a two-year extension with an option for a third year on Friday night.
Perez and Iwakuma were two of Seattle's five pending free agents. Starting pitcher Kevin Millwood, reliever George Sherrill and catcher Miguel Olivo are the team's only remaining free agents on the open market, but none are likely to return.
Millwood is pondering retirement, Sherill is coming off Tommy John surgery and Olivo was let go when the club declined a $3 million option on his expiring contract.
Perez, 31, was one of the better comeback stories in baseball last year, resurrecting his Major League career as a reliever two years after being released by the Mets with $12 million still on his contract. He posted a 2.12 ERA in 33 appearances with the Mariners after being called up in midseason from Triple-A Tacoma.
Perez posted the ninth-lowest ERA by an American League reliever with a minimum of 30 appearances after joining the team on June 16. He had a stretch of 20 consecutive appearances from July 13 to Sept. 14 without allowing a run, tied for the fourth-longest streak in club history.
"We are happy to have reached a mutual agreement with Oliver," Mariners general manager Jack Zduriencik said. "He did a very nice job in helping solidify our bullpen after his call up last summer. As a veteran left-hander, and one that had adjusted very nicely to his new role, we are looking forward to his contributions as we go into the 2013 campaign."
Perez pitched in the Nationals' Minor League system in 2011 and then found new life as a reliever in the Mexican Winter Leagues, where the Mariners saw his renewed fastball and gave him a shot on a Minor League deal that paid $750,000.
He wound up establishing himself as a solid member of Seattle's bullpen in the second half, allowing just seven runs and 27 hits in 29 2/3 innings with 10 walks and 24 strikeouts.
Perez combined with Rule 5 reliever Lucas Luetge and converted starter Charlie Furbush to give manager Eric Wedge three solid left-handers out of his bullpen even after Sherrill was lost for the season after pitching just two games.
The 10-year Major League veteran previously pitched as a starter with the Padres, Pirates and Mets. He has a career record of 59-72 with a 4.57 ERA and was a 15-game winner for the Mets in 2007, but struggled badly after signing a three-year, $36 million deal with the Mets in 2009.
He seems to have found a new niche now in relief.
"I felt pretty good this year," Perez told MLB.com at the season's conclusion. "This was kind of a new role for me, but I would like to be a reliever again because normally you get the chance to pitch every day. I can be a starter again, but right now I feel good in the bullpen."
With Perez's signing, the Mariners' 40-man roster now stands at 36.