I haven't seen one, but it could be a fairly nice weekend project. Use a couple of hacks[1] to get the fonts, compare that with a list of font uses, and ask the user:
What's the emotion to be conveyed? Where's it used? (Heading, wherever)
Then, display the top font, and a visual list of choices. I suppose that one could also link to free OSS fonts as well, but that would likely have to be second-tier compared to using what's on the computer already.