 His time in Perth was dogged by injury, firstly in September 2002 and again just six months later.He next featured in September 2004, and after coming on as a substitute, MacDonald scored two goals in the last six minutes against Partick Thistle to help Saints to a 2–1 win.MacDonald was awarded a three-year contract extension in February 2005.