Weight, who had to waive his no-trade clause, registered four goals and seven assists points in 29 games with the Blues this season.
A native of Detroit, Weight helped the Carolina Hurricanes win a Stanley Cup championship in 2006, scoring 16 points in 23 playoff games.
Weight, 36, has accumulated 259 goals and 696 assists for 955 points in 1,093 career NHL games with the New York Rangers (1990-93), Edmonton Oilers (1993-2001), Blues (2001-07), and Carolina Hurricanes (2006).
McDonald, 30, was in his seventh season with Anaheim. He has recorded four goals and 12 assists in 33 games with the Ducks this year.
"We're excited to add a top caliber forward to our hockey team," said Blues President John Davidson.
The 5-10, 183-pound center won a Stanley Cup with Anaheim last season, leading all Ducks in goals with 10.
A native of Strathroy, Ontario, McDonald has accumulated 92 goals and 167 assists in 391 career NHL games, all with the Ducks.
Birner, 21, has appeared in 18 games for Peoria (Blues' AHL affiliate) this season, scoring two goals and five assists. He was originally selected by St. Louis in the fourth round (116th overall) of the 2004 NHL Entry Draft.
"It's good to be a Duck," Weight said. "Any time there's any type of move, it's a tough situation and a tough decision. It's been a strange turn of events here for a couple of days. All I know is right now with each moment I'm more excited. I plan on being professional, prepared and give everything I can to the Ducks organization as should be expected."
In making the deal, the Ducks free up enough cap space to accommodate Scott Niedermayer's contract.
McDonald averages $3.333 million per year over the next two seasons, while Weight is making $3.5 million this and can become an unrestricted free agent in July. The deal allows Niedermayer to return to the ice and he is expected to play Sunday against the San Jose Sharks.