Early career Raised in
Enfield,
County Meath, He played in the same Under 19s team as fellow future first-team players including
Jake Walker,
Brian Maher, Paul Clearly and Joe Manley. In 2018, his side got to the Enda McGuill Cup final, ultimately losing out 2–1 to
Bohemians at
Richmond Park on 4 September.
St Patrick's Athletic McNally's first involvement in a first-team squad was on 8 August 2017, when he was named on the bench for a
Leinster Senior Cup game against Firhouse Clover, remaining an unused substitute. On 8 February 2019, it was announced that McNally had signed a two-year professional contract with
St Patrick's Athletic, while he would be
loaned to
Drogheda United for the
2019 League of Ireland First Division season.
Drogheda United loan McNally's first appearance in a
Drogheda United shirt came on 8 February 2019, playing in a friendly against his parent club
St Patrick's Athletic on the same day that he signed for the club on loan. The first senior goal of McNally's career also came against
Cobh Ramblers, when he scored the 4th goal in a 4–1 away win at
St Colman's Park on 27 April 2019. The month of May saw him score twice, scoring the 4th goal in a 5–0 win over
Cabinteely at
Stradbrook Road on the 18th, before scoring an equaliser in a 2–1 win away to
Wexford at
Ferrycarrig Park. On 28 June 2019, McNally scored an injury time header to beat
Bray Wanderers by a goal to nil at
United Park. McNally then scored in a 3–1 win over
Galway United in August as well as scoring an equaliser against
Shelbourne in a title-deciding match which his side lost 3–1 to finish runners up to Shels in second place.
Drogheda United's second-place finish did, however, earn them a place in the
League of Ireland promotion/relegation playoffs. They faced
Cabinteely in the semi-final and lost the first leg 1–0 before beating them 5–1 in the second leg with McNally scoring a
perfect hat-trick from
centre back. Despite winning the first leg of the Playoff Final 1–0 at home to
Premier Division side
Finn Harps, McNally and Drogheda were beaten 2–0 at
Finn Park in the second leg, denying them a place in the
2020 League of Ireland Premier Division. McNally finished his first full season with 37 appearances in all competitions, scoring 9 goals despite his defensive role in the team.
Return from loan New Pat's manager
Stephen O'Donnell decided to keep McNally on after an impressive season with
Drogheda United, with McNally returning to Pat's first-team training for pre-season on 2 December 2019 ahead of the
2020 season. McNally signed a new two-year contract with the club on 27 January 2020. He made his senior debut for the club in the opening game of the season on 14 February 2020, a 1–0 loss to
Waterford at
Richmond Park. The season was halted after just 4 games due to the
Coronavirus pandemic, which later resulted in the number of games in the season being halved. During this time McNally was linked with a move to
EFL League One side
Ipswich Town. The move failed to materialise, however, and he stayed at
St Patrick's Athletic and scored his first goal for the club in a 3–2 loss to
Finn Harps on 8 October 2020 with a header from a corner. On 2 December 2020, he was named the club's Young Player of the Year for
2020, following a season which he was one of only three players in the entire league to play every minute of every game in the season.
Oxford United On 29 January 2021 it was confirmed that
EFL League One side
Oxford United had signed McNally on a -year contract for an undisclosed fee. He spent his first few months at the club undergoing a 'mini pre-season' to get fit following a hip injury, first making the first-team matchday squad on 2 April 2021 when he was an unused substitute away to
Sunderland. He made his debut for the first team in July 2021 in a friendly against
Oxford City during pre-season, in which teammate and fellow defender
Sam Long described him as "an absolute machine". His competitive debut for the club came on 11 August 2021 in an
EFL Cup tie away to
Burton Albion at
Pirelli Stadium, which his side won 4–2 on penalties after a 1–1 draw in 90 minutes to earn a tie with
Queens Park Rangers in the next round. He made his league debut three days later in a 2–1 win over
Charlton Athletic at the
Kassam Stadium. McNally scored his first goal in English football on 23 November 2021, opening the scoring in a 3–1 win at home to
Fleetwood Town.
Burnley On 28 June 2022, it was announced that McNally had signed for
EFL Championship club
Burnley on a four-year contract for an undisclosed fee believed to be in the region of £2 million, making him new manager
Vincent Kompany's second signing for the club. He made his debut on 12 August 2022, coming off the bench late on in a makeshift striker role during a 1–0 defeat to
Watford at
Vicarage Road.
Coventry City loan On 26 January 2023 with game time at Turf Moor proving difficult to come by, McNally signed for Championship club
Coventry City on loan until the end of the season. McNally made 22 appearances in all competitions for the club, including the full 120 minutes of the
2023 EFL Championship play-off final as his side missed out on promotion to the
Premier League by losing on penalties to
Luton Town at
Wembley Stadium.
Stoke City loan Following Burnley's promotion to the
Premier League, it was announced on 2 August 2023 that McNally had signed for
EFL Championship club
Stoke City on a season-long loan deal. On 21 October 2023, McNally scored his first goal for the club, scoring the winning goal in a 2–1 victory at home to
Sunderland. McNally made 41 appearances for Stoke during the
2023–24 season as Stoke successfully fought against relegation. On 21 May 2024, Burnley confirmed that McNally would return to the club following the end of his loan spell.
Bristol City On 30 August 2024, McNally signed for
Bristol City for an undisclosed fee. On 9 February 2025, McNally suffered a season ending
Anterior cruciate ligament injury in a 1–0 defeat to
Swansea City at
Ashton Gate Stadium. He had scored 3 goals in 27 appearances in all competitions in his first season with the club up to that point. ==International career==