Zakuani, a Democratic Republic of Congo international, has agreed a one-year contract at Sixfields.
The 30-year-old, who was a £1m signing for Fulham from Leyton Orient in 2006, left Peterborough in May after seven years at the club.
McCourt, 20, has signed a two-year contract having been released by Barnsley earlier this month.
The Liverpudlian came through the youth ranks at Leicester City and made his professional debut on loan at Torquay United in 2013.
"Gaby is a huge character and is an excellent addition," manager Rob Page told the club website.
"For a central defender he is an excellent age, he has only just turned 30, but he has a wealth of experience playing in League One and the Championship and that is important for us.
"We now have four senior central defenders in the squad and they will provide excellent competition for each other. I am looking forward to pre-season, to getting down to work and giving the players the opportunity to show me and the rest of the staff what they can do."
On McCourt, who made just two substitute appearances for Barnsley after joining them in January 2015, Page said:
"I think he will fit in well, he is a player with a lot of potential with a fantastic attitude and is someone who I think is very talented.
"He will provide competition in central midfield and has had a taste of playing at this level both at Port Vale and Barnsley and that will stand him in good stead."
Find all the latest football transfers on our dedicated page.
League One Northampton Town have signed defender Gabriel Zakuani and midfielder Jak McCourt.