Gray est élu à l'Assemblée législative du Nouveau-Brunswick en 1850 en tant que député de Saint-Jean et devient membre du Conseil exécutif de à . Aux élections de 1856, il est non seulement réélu mais il devient même premier ministre du Nouveau-Brunswick. Il démissionne toutefois l'année suivante car il n'arrive pas à obtenir de majorité à l'Assemblée législative.
Il se lance alors au fédéral et est élu député de la circonscription Cité et Comté de Saint-Jean à la première Chambre des communes de la Confédération en , mais il n'effectue qu'un mandat.
À sa demande, il est nommé le juge à la Cour suprême de la Colombie-Britannique, où il se fera remarquer par son action en faveur des droits des Chinois immigrants et par son expertise en matière de questions frontalières entre le Canada et l'Alaska.