Outfielder Carlos Gonzalez has agreed to a minor league deal with the Cleveland Indians, sources told ESPN's Jeff Passan, confirming multiple reports.

If he's added to the 40-man roster, Gonzalez will get a $2 million contract in the major leagues. He can also earn $1 million in performance bonuses.

Gonzalez -- the Rockies' longtime charismatic outfielder, emotional leader and three-time All-Star and three-time Gold Glove winner -- left the team as a free agent after the 2017 season, then returned to Colorado last March with a $5 million, one-year contract -- a huge cut from his previous deal for $80 million over seven years.

The player nicknamed CarGo hit .280 with 11 home runs and 41 RBIs in the first half of last season, but his production tailed off after the break, with him batting .272 with just five home runs and 23 RBIs. He finished with a pedestrian-by-his-standards 16 homers and 64 RBIs in 132 games, but he still helped his team qualify for a National League wild-card spot and its third postseason appearance since 2009, Gonzalez's first year with the team.

Gonzalez, 33, then went 1-for-10 with two walks in the Rockies' NL division-series loss to the Milwaukee Brewers.

In the years since he savored his first trip to the postseason, there had been plenty of highs, with Gonzalez becoming the NL batting champ in 2010, putting up two 100-RBI seasons and hitting a career-high 40 homers in 2015. His numbers for the Rockies also included a .290 average with 227 homers and 749 RBIs.

The Indians have been in need of outfield help since Michael Brantley signed with Houston. Veteran outfielder Matt Joyce, who also signed a minor league contract after dealing with a back injury last season, has been told he will not make the Opening Day roster.

Leonys Martin will likely be the starting center fielder when the Indians open the season in Minnesota on March 28. Several players are battling for the other two outfield spots, but no clear leaders have emerged.

The Associated Press contributed to this report.