McNab ran unsuccessfully twice for a seat in the Ontario assembly. He was elected to the House of Commons in a by-election held after Donald Alexander Macdonald was named Lieutenant-Governor of Ontario, was unseated after an appeal and elected again in the by-election that followed. In 1887, he was named license inspector for Glengarry and, in 1897, sheriff for Stormont, Dundas and Glengarry.
McNab did not succeed in winning a seat in the Ontario assembly twice but was elected to the House of Commons after Donald Alexander Macdonald became Lieutenant-Governor. He lost his position due to an appeal but regained it in another by-election. In 1887, he served as the license inspector for Glengarry and, in 1897, was appointed sheriff for Stormont, Dundas, and Glengarry.