In
Dorchester, Boston,
P.I. Patrick Kenzie and his partner and girlfriend Angie Gennaro witness a televised plea by Helene McCready for the return of her abducted four-year-old daughter Amanda, who was last seen with her favorite doll, Mirabelle. Amid the media frenzy, Amanda's aunt Bea and uncle Lionel hire the pair to find her. Patrick and Angie meet with
police detectives Remy Bressant and Nick Poole, who tell them about Corwin Earle, a known
child molester whom they consider a suspect. Patrick asks a criminal associate, Bubba, to look for Earle and also discovers that Helene and her boyfriend Ray are addicts and
drug mules for local
Haitian drug lord Cheese, and had recently stolen $130,000 from him. After finding Ray has been murdered by Cheese's men, Patrick and Angie join Remy and Nick to find Amanda, whom they now believe has been taken by Cheese. Helene reveals she buried the money in Ray’s backyard and tearfully makes Patrick promise he will bring Amanda home alive. Patrick meets with Cheese and tries to negotiate returning the stolen money in exchange for Amanda, but he denies any involvement in the girl's disappearance. The following day, Captain Jack Doyle reads Patrick a telephone transcript of Cheese calling the station to set up an exchange for the girl. The exchange at a nearby
quarry is botched after a gunfight breaks out, and Cheese is killed. It is believed that Amanda fell into the quarry's pond and drowned; Angie retrieves Mirabelle and returns it to Helene. Doyle, whose own daughter was killed years before, takes responsibility for the botched exchange and goes into early retirement. Two months later, a seven-year-old boy is abducted in
Everett, a city near Boston, and Patrick receives information from Bubba that Corwin Earle is living with two married
cocaine addicts. The two visit the house and Patrick observes evidence of the abducted boy, so he returns with Remy and Nick late at night to rescue him. Before they can enter the house, the woman starts shooting and fatally wounds Nick before chasing Patrick into Corwin's room. He discovers the dead child and executes Corwin as Remy arrives and kills the woman. The following evening, an intoxicated Remy tries to alleviate Patrick's guilt, confiding that he once planted evidence to help a family escape from an abusive husband. When Remy discloses that Ray was the one who told him about the abusive husband, Patrick becomes suspicious, as Remy had previously said that he did not know Ray. Following Nick's funeral, Patrick speaks to police officer Devin, telling him that Remy lied to him about knowing Ray. Devin tells him Remy knew about Cheese's stolen money before Cheese did. Patrick goads Lionel into meeting him in a bar and pieces together that he and Remy had staged a fake kidnapping to keep the drug money for themselves and to teach Helene a lesson, which Lionel finally admits. Remy enters the bar wearing a mask and stages a robbery. Patrick realizes it is just a ruse to kill them, so he yells about Remy's involvement in Amanda's kidnapping. The bartender shoots Remy, but he flees, pursued by Patrick, and succumbs to his injuries. While being questioned, Patrick realizes Doyle's involvement when he is told the police do not use phone transcripts. Arriving at Doyle's house, Patrick and Angie find Amanda alive and well. He admits his part in the kidnapping and setting up the fake exchange to frame Cheese. When Patrick threatens to call the police, Doyle tries to convince him that Amanda would have a better life with him and his wife than with her neglectful mother. Patrick discusses the choice with Angie, who says she will hate him if he returns Amanda to her mother, making the case that the girl would grow up much safer and happier if they leave her to be raised by Doyle and his wife. However, he makes the call regardless. Doyle, his wife, and Lionel are arrested, and Patrick and Angie break up. Patrick later visits Helene as she is preparing for a date. On discovering she has not arranged for a babysitter, he volunteers. After she leaves, Patrick sits down with Amanda and asks about Mirabelle, but is told her name is Anabelle. Realizing Helene does not even know the name of her daughter's favorite doll, Patrick is left to wonder whether returning Amanda to her mother was a mistake. == Cast ==