Harper, a two-time NL MVP, is a seven-time All-Star selected to start for the sixth time. He broke his left thumb when hit by a pitch from San Diego’s Blake Snell on June 25.
Minnesota's Byron Buxton will replace Trout in the AL's starting lineup.
Houston's Justin Verlander, the Yankees' Gerrit Cole and Atlanta's Max Fried were dropped from the active rosters on Sunday after making weekend starts. Milwaukee pitcher Corbin Burnes dropped out Sunday along with New York Mets outfielder Starling Marte.
Relievers Liam Hendriks of the Chicago White Sox, Jordan Romano of Toronto and Devin Williams of Milwaukee were picked as replacements along with Freeman and St. Louis pitcher Miles Mikolas.
Mikolas gets a $50,000 bonus for his selection, Hendriks $15,000 and Romano $10,000.
About one-fifth of the rosters have changed since the original 33-man teams were announced on July 6 and 8.
Los Angeles Dodgers left-hander Tyler Anderson, Miami first baseman Garrett Cooper, San Diego infielder Jake Cronenworth, San Francisco left-hander Carlos Rodón, Toronto infielder Santiago Espinal, Boston designated hitter J.D. Martinez, Atlanta third baseman Austin Riley and Texas shortstop Corey Seager were among previous additions.
Houston second baseman Jose Altuve, Astros DH Yordan Alvarez, St. Louis third baseman Nolan Arenado, Miami second baseman Jazz Chisholm Jr., Milwaukee closer Josh Hader, Harper and Toronto outfielder George Springer were among those who dropped out, most because of injuries.
After being added, Rodón was then dropped because of a cracked nail and blister on the middle finger of his pitching hand.
Four of 18 starters have been replaced: Altuve by Cleveland’s Andrés Giménez, Chisholm by the New York Mets' Jeff McNeil, Harper by Atlanta’s William Contreras and Trout by Buxton.
More AP MLB: https://apnews.com/tag/MLB and https://twitter.com/AP_Sport