Gonzalez's deal is pending a successful physical, a source told The Associated Press on the condition of anonymity because the team had not announced the agreement. USA Today first reported the deal.
Gonzalez is several years removed from being at his best when he was in Colorado, where he was an All-Star in 2012-13 and 2016. The 34-year-old played with the Rockies through 2018, when he hit .276 with 16 home runs and 64 RBI in 132 games.
Last season, Gonzalez signed a minor league deal with Cleveland and was called up by the Indians in mid-April. He appeared in 30 games then was cut.
Gonzalez latched on with the Chicago Cubs, lasted just 15 games and was released in late June. He batted .200 in 145 plate appearances and did not play during the final three months of the season.
He would appear to be a long shot to make Seattle's roster with the Mariners focus on their young players and a glut of corner outfielders. But the unknown status of Mitch Haniger following core muscle surgery has opened up an opportunity in right field, at least early in the season. Gonzalez is likely to be lumped in with the likes of Jake Fraley, Braden Bishop and Kyle Lewis in competition for the corner outfield spots until Haniger returns.