Jack McFarland is a character from Will & Grace was played by Sean Hayes . John Philip `` Jack '' McFarland was a fictional character on the American television sitcom Will & Grace , played by Sean Hayes .