Stiernroos föddes 1684 som son till lagmannen Johan Berelius - adlad Stiernroos - och Maria Hobel. Stiernroos blev antagen som volontär vid Karlskrona år 1700 och blev strax därefter flottans arklimästare under expeditionen till Archangelsk. 1702 befordrades han till fänrik, 1705 blev han löjtnant och anställdes vid livdrabantkåren 1707. Under slaget vid Holowczyn 1708 blev Stiernroos sårad och efter förlusten vid Poltava, följde han med kung Karl XII till Bender, där Stiernroos också kom att delta i den kommande kalabaliken. Därefter deltog Stiernroos i expeditioner till bland annat Tartar-Khan i Taman och den turkiska fästningen Taganrok. Dessa expeditioner gjorde Stiernroos i hemlighet och han var alltid förklädd. 1714 blev han befordrad till vice korpral vid livdrabanterna och bevistade därefter belägringen av Stralsund och slaget vid Rügen. Efter detta, deltog Stiernroos i de två och under det senare, blev han befordrad till korpral bland livdrabanterna. 1723 befordrades han till överste, 1732 blev han löjtnant bland livdrabanterna, 1744 blev han kaptenlöjtnant vid drabanterna samt generalmajor vid kavalleriet. 1751 blev han befordrad till generallöjtnant för att slutligen 1755 bli general. Magnus Stiernroos avled den 16 maj 1762 i Stockholm. Han var gift från 1720 med Sofia Juliana von Bratt.