The deal includes an invitation to the team's big league spring training camp.
Morgan confirmed the signing in an email to ESPN.com on Tuesday. A source said that if Morgan makes the Indians' big league roster and reaches specified incentives, the total value of his contract would exceed $1 million.
Morgan, 33, is a .280 career hitter with 117 stolen bases in parts of six seasons with Pittsburgh, Washington and Milwaukee. His most productive season came in 2009, when he hit .307 with 42 steals for the Pirates and Nationals.
During his time in the majors, Morgan attracted a following and agitated opponents through his fast-talking, high-energy alter ego, "Tony Plush.'' He spent last year with the Yokohama DeNa BayStars, hitting .294 with 11 home runs in the Japan Central League.
Morgan is the second free-agent outfielder this month to sign a minor-league deal with Cleveland that comes with an invitation to big league camp. Last week the Indians added Jeff Francoeur, who split the 2013 season between Kansas City and San Francisco.