The Indians got right-hander Justin Masterson and minor league pitchers Nick Hagadone and Bryan Price. The trade came shortly before the 4 p.m. deadline to complete deals without waivers.
The 30-year-old Martinez has split his time at catcher and first base this season. He is hitting .284 with 15 home runs and 67 RBIs.
Martinez gives the Red Sox, currently second in the AL East behind the New York Yankees, the big bat they were looking for.
The rebuilding Indians made their second big deal of the week, after trading reigning AL Cy Young Award winner Cliff Lee to Philadelphia for four prospects.
This marked the second straight year the Red Sox made a splash at the July 31 trade deadline. Last season, they dealt away Manny Ramirez and got Jason Bay.