McKay has previously played for Rangers, Greenock Morton, Raith Rovers, Nottingham Forest, Swansea City and Fleetwood Town.
After a few matches on the sidelines, he reclaimed his place in the starting eleven with a stunning performance from the bench against Alloa Athletic, in which he scored two goals in a 7–0 win.
[22][23] McKay signed for Scottish Championship club Raith Rovers on 1 September 2014, agreeing a loan move until 1 January 2015.
[26] On 19 August 2015, he scored his first goal for Rangers since November 2012, in a 2–0 win over Ayr United in the Scottish Challenge Cup.
[30] McKay signed a four-year contract with Nottingham Forest on 5 July 2017 for a reported fee of £500,000, linking up with Warburton once again.
[33] On 31 July 2018, McKay signed a three-year contract with Swansea City, having moved from Nottingham Forest for an undisclosed fee.
[42] Six years later, he received his second call-up for the UEFA Nations League match against Ukraine after Scott McTominay was suspended for picking up a booking against the Republic of Ireland.