McGrain tilbragte stort set hele sin karriere hos Celtic F.C. i fødebyen Glasgow.[1] Han spillede hele 17 sæsoner for klubben, og var blandt andet med til at vinde ni skotske mesterskaber. Efter at have spillet over 400 ligakampe for klubben skiftede han i 1987 til Hamilton Academical, hvor han spillede den sidste sæson af sin karriere.
McGrain spillede desuden 62 kampe for det skotske landshold.[2] Hans første landskamp var et opgør mod Wales 12. maj 1973, hans sidste en VM 1982-kamp mod Sovjetunionen 22. juni 1982.