Jake is my own meager attempt at writing a Hearts AI player. He has full recall of the cards he's seen, but he's not so clever that he does probabilities on them. Instead, he uses heuristics of my own devising. Now, I kinda suck at hearts, but he has total recall so he sucks moderately less.
He was written for gnome-hearts v.0.1.3 (in LUA), but was ported to Python and added to the development trunk by Sander Marechal (thanks!). You can check out the development trunk by following the download and compilation instructions at Lone Wolves or (if you're behind the curve), you can get the 1.3 version here.
Of course, most Hearts mortals don't have perfect recall, so it's a bit cheap to implement it in an AI, but he's not that clever otherwise. He beats me, but so does my seven-year-old.