Drew Waters, MJ Melendez and Michael Massey each hit two-run home runs to help lead the Kansas City Royals to victory over the Boston Red Sox 9-3.