Safety Darcel McBath, who played nearly 70 percent of the 49ers' special-teams plays, agreed to a one-year contract to return the 49ers, a source said.
McBath had eight tackles on special teams. The 49ers did not tender him as a restricted free agent at $1.323 million deal so they could sign him at a lower salary.
McBath, who had just three tackles on defense last season, joins a competition at safety as the 49ers look to replace All-Pro Dashon Goldson, who last week signed a $41.25 million contract with the Tampa Bay Buccaneers.
Donte Whitner returns as the starter at strong safety. Former St. Louis Rams safety Craig Dahl, who signed a three-year, $5.25 million deal with the 49ers last week, joins C.J. Spillman, Trenton Robinson, Michael Thomas and McBath are among the candidates for the vacant free safety job.
General manager Trent Baalke told CSNBayArea.com this week there have been no discussions about moving third cornerback Chris Culliver to safety to compete to replace Goldson. Culliver mostly played safety during his college career at South Carolina.