Only last December did McDonald receive a three-year, $19.65 million extension with a $7 million signing bonus, one of the final personnel moves by 49ers outgoing general manager Trent Baalke.
Johnson was originally drafted by the in 2009 and spent four seasons with the Steelers and then two seasons with the San Diego Chargers before returning to Pittsburgh.
McDonald, 27, played in 11 games for the Niners in 2016, catching 24 passes for 391 yards and four touchdowns.
The Steelers have yet to find a permanent replacement at tight end since Heath Miller's retirement following the 2015 season, and will look for McDonald to pick up offensive coordinator Todd Haley's system quickly.
They were "not consistently varsity enough", as Mike Tomlin would classified it Tuesday. San Francisco received a fourth-round pick from Pittsburgh in exchange for McDonald and a fifth-round pick, made official by the team.
McDonald, despite possessing obvious athleticism, has struggled with both injuries and drops throughout his career and leaves the 49ers with just 64 receptions, 866 yards and seven touchdowns. On Tuesday, he said the tight end group has progressed in the past year. Last year's experiment with Ladarius Green didn't pan out.
"We're not going to anoint him in any way", Tomlin said, via Jeremy Fowler of ESPN.
Garrett Celek would on the surface appear to be a beneficiary of this trade, but CBS Sports' Jason La Canfora has reported the 49ers could also be open to trading him. We're going to put him in uniform and allow them to sort themselves out. James and Grimble can still serve an important role in the passing game, particularly in the red zone. How much he can handle and how long that process is will be determined by him.