Weaver will report to Triple-A Buffalo of the International League.
The 31-year-old Weaver is 93-114 with an ERA of 4.72 in 284 appearances over nine seasons from 1999-2007. He's pitched for Detroit, the New York Yankees, Los Angeles Dodgers, St. Louis and Seattle. He had a career-best 14 wins for the Dodgers in 2005 and won three games for the World Series champion Cardinals in the 2006 postseason.
Weaver was 7-13 with a 6.20 ERA in 27 starts for the Mariners last year and pitched this season for Triple-A Nashville from May 1 to June 11 when he was released by the Milwaukee Brewers.
Indians manager Eric Wedge noted Weaver's experience and the organization's current shortage of starting pitching depth. Wedge was asked before Saturday's 9-6 loss at Minnesota whether he expected an opening in the rotation soon. C.C. Sabathia is a potential candidate to be traded, with the Indians in last place and so far unable to work out a contract extension with the reigning AL Cy Young Award winner.
"That's not something I can really talk about," Wedge said. "We'll let things play out."
Information from The Associated Press contributed to this report.