Queen's Park Raised in
Clydebank, McGinn started his career as a youth player at
Queen's Park. He made his debut on 2 May 2009, in Queen's Park's 1–0 defeat to
Raith Rovers. Having come on as a substitute, he was sent off in the 90th minute.
St Mirren On 18 September 2012, McGinn signed for
Scottish Premier League side
St Mirren until the end of the season, despite interest from
Aberdeen and
Dundee United. On 24 November 2012, he went out on loan to former his club Queen's Park. The loan was necessary to give him game time, as he was registered as an amateur and unable to play in the SPL until January. Despite being offered a new contract, McGinn opted to leave St Mirren at the end of the season.
Dumbarton After his successful loan spell, on 4 June 2013, McGinn agreed a one-year deal with
Dumbarton. In all he made 42 appearances in all competitions that season as the side finished fifth in the
Scottish Championship. McGinn was also named as part of the
2013–14 PFA Scotland Scottish Championship Team of the Year.
Dundee On 20 June 2014, McGinn was persuaded by
Dundee manager
Paul Hartley to sign a two-year contract alongside former St Mirren teammate
Paul McGowan. He made his debut on 2 August 2014, as Dundee beat
Peterhead 4–0 in the
Scottish League Cup.
Chesterfield On 22 June 2016, McGinn signed a two-year contract with English club
Chesterfield after his Dundee contract expired. He scored his first goal for Chesterfield in a 3–1
EFL Cup loss against
Rochdale on 9 August 2016. On 25 August 2017 he left the club, with his contract being cancelled by mutual consent.
Partick Thistle McGinn returned to Scottish football on 31 August 2017, signing a one-year contract with
Partick Thistle. Thistle were relegated from the
Scottish Premiership, via the playoffs, in his only season with the club.
St Mirren (second spell) McGinn returned to
St Mirren in May 2018, signing a two-year contract. He agreed a deal with the club while the manager position was vacant;
Alan Stubbs took over in June 2018.
Hibernian McGinn signed an 18-month contract with
Hibernian on 31 January 2020, moving from St Mirren for an undisclosed transfer fee. He was added to the
Scotland international squad in October 2020, after six players dropped out of the initial selection due to injuries and
COVID-19. On the same day as his international selection, McGinn agreed an extended contract with Hibernian. McGinn scored his first goals for Hibs, and his first since April 2019, when he scored twice in a 2–2 draw with
St Johnstone on 24 November. On 18 September 2021, McGinn scored against his former club
St Mirren during a 2–2 draw. His appearances for Hibs during the 2021–22 season triggered a one-year extension to his contract, but he was allowed to leave by mutual consent soon afterwards.
Motherwell After leaving Hibs, McGinn signed a one-year contract with
Motherwell. On 9 May 2025, Motherwell announced that McGinn had extended his contract until the end of the 2025/26 season. On 1 January 2026, McGinn again extended his contract with Motherwell, this time until the summer of 2027. ==International career==