MacDonald was born in Inverness and began his career with Dundee.[1][2][3] He joined English side Derby County in December 1898 and helped the Rams reach the 1899 FA Cup Final where they met Sheffield United, MacDonald played in the final as the Blades proved too sharp for Derby winning 4–1.[1] He only played eight matches in 1899–1900 and left Derby at the end of the season. He returned to Dundee during the next season[3] then joined Stoke where he played nine matches in 1901–02, scoring three goals.[1]
^John Litster (October 2012). "A Record of pre-war Scottish League Players". Scottish Football Historian magazine. {{cite journal}}: Cite journal requires |journal= (help)