McKenzie was born in Benhar, between Harthill and Fauldhouse in West Lothian. He played football for Division One club Ayr United "for several seasons", but when they were relegated in 1924–25, he chose to move to England. He had scored 17 of Ayr's 43 goals that season, and was described by the Derby Daily Telegraph as "quite the bestplayer that club have sent to England since they allowed Johnny Crosbieto go to Birmingham". He signed for Darlington in 1925 ahead of their first season in the Football League Second Division. He went straight into the starting eleven for the opening match, at home to Nottingham Forest, and played regularly throughout the season, appearing in 37 league matches out of a possible 42. He also scored regularly, contributing two goals to Darlington's 7–1 defeat of Portsmouth in October and another two in a 3–3 draw with Swansea Town in December. In mid-January, he was switched to centre forward ahead of Darlington's first ever league meeting with Derby County in an attempt to remedy the team's goal drought. He produced two goals in a 3–1 win, went on to lead the line brilliantly when scoring four in a 6–0 defeat of Clapton Orient in February, and attracted attention from First Division clubs. According to the Derby Daily Telegraph, he "has the build and weight for the position, and he adds to a nice turn of speed and dash a cleverness in ball distribution which enables him to keep both his wings going." He finished the season with 17 goals from his 39 appearances in all competitions. His performances earned him a transfer to the ambitious Portsmouth club, where the local newspaper, the Evening News, suggested he was chosen because he played in "what is now known to be 'the Pompey style': constructive, unselfish, thoughtful, determined, and – when necessary – forceful", and "should do well in the more congenial surroundings at Fratton Park with real football, rather than the tearaway and haphazard conditions in vogue at Darlington". On the opening day of the season, "the best goal of the match came when McKenzie, obtaining twenty-five yards out, side-stepped an opponent, and shot, at a tremendous pace, into the corner of the net" to complete a 3–1 win against local rivals Southampton. He kept his place for the next three matches, defeats at Manchester City and Oldham Athletic and a home win against Fulham, but the previous season's incumbent, David Watson, returned to the inside-left position for the next match. McKenzie continued to play for Portsmouth's reserve team in the Southern League and London Combination, but those four matches were his last for the first team. McKenzie returned to Scotland and joined Hamilton Academical; he played ten First Division matches in the first half of the 1927–28 season and scored once, a penalty in a 6–3 defeat of Dunfermline Athletic.