Marty (Alfred Molina) is a down-and-out jazz musician with colorful dreams of making it big, but right now he's living on the edge and making small money by giving music lessons to people who don't seem to want them. His sometimes girlfriend, Sheila (Maggie O'Neill), is a barmaid at the Rose of Sharon, a local pub owned by the hot-tempered Frank (Seymour Cassel). One day Sheila takes an old rocking chair out of the pub's storage and gives it to Marty; he then discovers that the chair is haunted by two ghosts, a middle-aged woman named Lilly (Marianne Faithfull) and a precocious little girl named Ruthie (Rachel Bella). Ruthie seems to be from the turn of the century, but Lilly is contemporary. These easygoing souls appear to Marty and enliven his life with non-threatening pranks, but things turn serious when Marty discovers Lilly was Frank's wife, who killed her in a fit of rage. With the help of the mortal, the ghosts plan revenge.