There is a mutual option for a fourth year.
Polanco played for the Phillies from 2002 to 2005, originally acquired as part of the trade with the St. Louis Cardinals for third baseman Scott Rolen.
He would likely move back to third base to replace Pedro Feliz, who his also a free agent.
Polanco spent last season at second base with the Detroit Tigers.
Polanco hit .285 with 10 home runs and 72 RBIs last season with Detroit.
Phillies sign Juan Castro
The Phillies announced earlier Thursday they had signed a one year contract with infielder Juan Castro.
Castro, 37, hit .277 with one home run and nine RBI in 57 games for the Los Angeles Dodgers last season. He made 19 starts at shortstop, eight at second base and two at third base, while also appearing in left field for two games.
A right-handed batter, Castro hit .462 (6-13) against NL East teams last season and went 3-for-5 (.600) as a pinch-hitter.