The Cleveland Indians have reached agreement on a contract with free-agent first baseman Yonder Alonso, a source told ESPN on Wednesday.

The deal is for two years at $16 million, with an $8 million vesting option for a third year, as reported by The Athletic.

Alonso, 30, is coming off a career-best season. He hit 28 home runs with a .501 slugging percentage for the Oakland Athletics and Seattle Mariners and made his first All-Star team.

Alonso takes over at first base in Cleveland for Carlos Santana, who finalized a three-year, $60 million agreement with the Philadelphia Phillies on Wednesday.

Before signing Alonso, the Indians had expressed interest in free agents Lucas Duda, Logan Morrison and Matt Adams. Adams came off the board when he agreed to a one-year, $4 million contract with the Washington Nationals on Wednesday.