MacDonald played 78 games for between 2007 and 2015 before going to play overseas. He returned to the Mako ahead of the 2020 Mitre 10 Cup. MacDonald played 11 games and scored 3 tries for the side in the 2020 season as they went on to win the competition for the second time in a row. MacDonald became only the third player to play 100 games for the province during the 2021 Bunnings NPC in the final against, the Mako however could not get across the line, losing 23–20.
Super Rugby
MacDonald played 24 games for the between 2010 and 2012. He made the move north to the ahead of the 2013 Super Rugby season. He had one season with the in 2015, playing 13 games. MacDonald returned to the Blues for the 2016 Super Rugby season finishing his time at the side with 20 matches. He returned to the as an injury replacement during the Super Rugby Trans-Tasman season in 2021 but did not play. He made his Super Rugby return for the Crusaders in Round 3 of the 2023 Super Rugby Pacific season against the where he started and scored 2 tries in a loss for the Crusaders.
Overseas
MacDonald signed with Irish side on a three month contract in 2014 where he played 3 games. In 2016 he moved to France where he played for. He spent five seasons with the side playing a total of 100 games.