Catcher Jarrod Saltalamacchia agrees to deal with Marlins

Free agent Jarrod Saltalamacchia is headed home to play for the Miami Marlins, agreeing to a three-year deal worth $21 million, sources told Yahoo Sports.

The deal will be official upon the completion of a physical.

[Also: A's continue to make moves, acquire OF Craig Gentry from Rangers]

The 28-year-old Saltalamacchia, who grew up in South Florida, excelled last season with the Boston Red Sox, hitting .273/.338/.466 and doing the majority of the catching for the World Series champions.

Between Saltalamacchia's postseason struggles and lingering questions about his health, his market did not blossom immediately. In the end, the Marlins beat out the Minnesota Twins, who offered Saltalamacchia a two-year deal with an option, and the Red Sox, who went with a straight two-year offer and signed catcher A.J. Pierzynski to a one-year deal Tuesday.

Saltalamacchia adds a veteran presence behind the plate to a Marlins team larded with young starting pitching, including ace Jose Fernandez, Nate Eovaldi, Henderson Alvarez, Jacob Turner and prospects Andrew Heaney and Justin Nicolino.