McClelland was born in Dysart in Fife and began his career with nearby Raith Rovers.
Southend United
He joined Southend in 1923. At Southend he led the scoring charts during 1924-5, with 16 goals in 23 games.
Middlesbrough
In March 1925 he moved to Ayresome Park intended to replace Ian Dickson. In 1925-26, McClelland was an ever-present in Middlesbrough's Second Division line-up, top scoring with 32 goals in 38 games. The following season began badly for Boro, losing three and drawing one of their first four games, scoring just one goal in the process. George Camsell was given a chance for the fifth match of the season after an injury to McClelland. Camsell who scored a record 59 goals as 'Boro won promotion to Division One. McLelland was the last player to top score there before Camsell did so for 10 seasons in a row.
Bolton Wanderers
Bolton paid £6,300 for McClelland's transfer from Middlesbrough in March 1928, at the same time allowing John Smith to move to Bury. McClelland immediately became a hit. Taking over at centre-forward, McClelland made his first appearance on 17 March 1928. He scored a debut goal in the 2-2 draw. He played in every game then until the end of the season - 10 appearances; 8 goals. In 1927/28 Bolton Wanderers finished 7th in Division 1. After a poor start to 1928-9 he moved to inside-right. Although his goals dried up, he was an important member of the side that won the FA Cup beating Portsmouth 2-0 in the final. McClelland made 39 league appearances, scoring 1 goal. He appeared in all 8 games of the FACup run and scored 1 goal. In 1928/29 Bolton finished 14th in Division 1. In 1929/30 Wanderers finished 15th in Division 1. McClelland made 8 league appearances, scoring 1 goal. He then left Bolton Wanderers to join Preston North End.
In October 1929, McClelland moved to Preston North End, for a £5,000 fee, and scored 22 goals in 53 games before returning to the First Division with Blackpool in February 1931.
Blackpool
McClelland made his debut for Harry Evans' Blackpool late in the 1930–31 season, in a 3–3 draw against his former club, Bolton Wanderers, at Bloomfield Road on 21 February 1931. He scored the Seasiders' second goal. He went on to make a further 12 league appearances that season, scoring three more goals. In 1931–32, McClelland made 15 league appearances and scored six goals. The following campaign, 1932–33, he made 38 league appearances and scored 15 goals. He also scored twice in Blackpool's run to the fifth round of the FA Cup. McClelland left Blackpool for Bradford Park Avenuein the summer.
McClelland joined Manchester United at the start of the 1936–37 campaign, making his debut in the 3–1 defeat at Huddersfield Town on 2 September. Unable to gain a regular place in the United first team, McClelland only made five appearances in his one season at the club, and only registered one goal in only his second match. After his career with Manchester United ended, he was given a coaching role with the club, looking after the MUJAC players from the beginning of the 1938–39 season. He remained in a coaching role with Manchester United until the outbreak of the Second World War.