well I can tell you how we did it, a two pronged approach. The first is to not entirely discourage puppy mouth play but teach them to do it gently. The usual ways have worked for us, the first is to yelp when it hurts and then withdraw from play, same as other dogs would and the second is to gently tickle the roof of the mouth while saying "be gentle" or similar. We are now at a state where at seven months both pups will hold my fingers gently in play or as they walk next to me. If my fingers were eggs, they wouldn't be cracked.
So now human fingers in mouth is play and a privelege not anything to worry about.
The next thing is to wait until the dog is sleepy and cuddled up next to (or on!) you and gently stroke and play with the lips using the mouth check word you have decided on. Don't make a big deal of it, just stroke the lip and mouth area as you would anywhere else.
Once you have those two actions sorted. you can gently open the mouth again when the dog is sleepy. Like us, a dog's jaw hinges downward. If you ask a dog to open its mouth with your hand over its muzzle, you are either asking it to raise its head backwards or you have to push down on the jaw to get it to move.
Put your hand under the chin and find that same gap in the gums and gently press. At first you may only get a millemetre of opening, leave it at that, don't go wild with the praise, you want the dog sleepy and relaxed.
next step is to use the mouth checking command during mouth play when pup has his mouth open and wants to mouth your hand, again have your hand under his jaw and don't press down, just curl you fingers up and round so they go in his mouth. Use your mouth examination command and then go on with the play.