McCann est choisi en 8e position du repêchage amateur de la Ligue nationale de hockey en 1967 par les Canadiens de Montréal.
Lors de la saison 1966-1967, il évolue au sein de l'équipe des Red Wings de Weyburn, en Ligue canadienne de hockey junior majeur.
Sa carrière professionnelle débute lors de la saison suivante, en Ligue centrale de hockey, où il joue pour deux clubs : d'abord pour les Apollos de Houston puis pour les South Stars de Memphis.
N'arrivant pas à s'imposer dans ces deux clubs, il tente pour la saison 1968-1969 de jouer pour les Wranglers d'Amarillo, ces derniers interrompent le contrat après un seul match. Il retrouve un poste en Ligue internationale de hockey, auprès des Muskegon Mohawks, mais là aussi l'essai n'est pas fructueux.
La saison suivante, il tente d'aller jouer en Eastern Hockey League, avec les Blades de New Haven. Sa carrière semble enfin décoller, il parvient à s'imposer dans cette équipe et y joue trois saisons de 1969 à 1972.
Lors de la saison 1972-1973, son équipe change de nom et de ligue, elle devient les Nighthawks de New Haven et évolue en Ligue américaine de hockey. Après onze matchs, Elgin n'ayant récolté qu'une seule assistance est échangé à un club de LIH, les Gears de Saginaw.
Il dispute encore trois saisons en LIH, portant les couleurs des Owls de Columbus et des Wings de Kalamazoo, avant de mettre un terme à sa carrière de joueur professionnel[1].