Championship club Preston North End have completed a deal for the Northern Ireland international understood to be worth more than £1.2million.
However, it could rise to more than £1.75million – the club's record sale – according to St Johnstone chairman Steve Brown.
McCann has been a crucial part of the Saints midfield since making his first-team breakthrough under Tommy Wright in the 2019/20 season.
The 21-year-old helped the team to the cup double last season and increased his profile with a fine showing in the Europa League tie with Galatasaray.
Preston boss Frankie McAvoy labelled the midfielder “one of the best young players in Scotland”.
“It’s brilliant, it’s been such a long day today," McCann told the the club's website. I’m just so buzzing to get it all sorted and get it over the line and I just can't wait to get back and get in with the lads next week.
"St Johnstone are a great club. I’ve been there since I was young so it was difficult leaving because they’ve done so much for me when I’ve been growing up, but an opportunity to move down to a club like this is just too much to pass up and I just can’t wait to get started.
"I try and do every part of the game. I try and put myself around, getting forward, getting back, getting involved. I put myself into tackles, pressing high, I also try and chip in with goals at the other end so hopefully I can do that and the fans will take to me which is what I’ll try and do."
McAvoy added: "He’s done remarkably well playing at St Johnstone. He’s a full international with Northern Ireland so we’re absolutely delighted to get the deal done.
"He's a very dynamic midfield player and I’m sure I’ll add a lot to our squad."
St Johnstone have replaced Ali McCann with the loan signing of Cameron MacPherson from St Mirren.
The 22-year-old midfielder will be unable to play against his parent club and could be recalled by the Buddies.
St Johnstone lost Jason Kerr earlier on deadline day.
The centre-back made the switch to Wigan Athletic for a reported £600,000.
Kerr had entered the final year of his contract.
"Just want to thank everyone at St Johnstone for all they’ve done for me over my time at the club," he posted on social media.
"It’s been an absolute pleasure to play and work with everyone involved. Also thank you to the fans who have supported me during the ups and downs! Going to miss you all.”
Kerr has been replaced by the Lars Dendoncker, the Belgian youth international has joined on loan from Bright & Hove Albion.
Brother of Belgian star Leander, the 20-year-old has called the move to McDiarmid Park a “fantastic opportunity”.
Callum Davidson has already added midfielder Ali Crawford to his squad, the former Accies star joining on loan from Bolton Wanderers.