After receiving a heart transplant, retired FBI criminal profiler Terrell "Terry" McCaleb is contacted by Graciela Rivers, the sister of his donor Gloria, and asked to investigate her death, which occurred during an unsolved convenience store robbery. McCaleb had become a minor celebrity as the head of the FBI task force on the "Code Killer", an L.A.-based serial killer (similar to the Zodiac Killer) who always signed his notes with the code "903 472 568", but he is now living on his fishing boat and has been inactive to prevent rejection of his new heart (to the extent that he cannot even drive).
He reluctantly agrees to help Graciela but finds the police handling the case to be extremely hostile. However, he is able to match the style of another killing to Gloria's and gets a copy of the files for both cases from Jaye Winston, the sheriff's deputy on that case. He surprisingly discovers that the call reporting Gloria's shooting was placed slightly prior to the actual shooting, leading him to suspect that Gloria was targeted for murder. He interviews the only witness to the second crime, a man called James Noone, but fails to learn much.
As he continues to investigate, with Winston's support but against the wishes of his doctor, he finds that the two cases plus a third case are linked through the use of a common gun and a common line said by the killer after the shooting, "Don't forget the cannoli" from The Godfather . He then learns that the first two victims had McCaleb's blood types and were on a list of people who had previously donated blood. If the victims died, McCaleb would benefit from their death as a potential organ recipient. Because of this, the police on Gloria's case focus on him as the possible killer and get a search warrant for his boat. Then, the real killer begins to plant evidence implicating McCaleb on his boat, expecting the police to find it, but McCaleb finds and then conceals the most incriminating evidence.
Examining the facts again, McCaleb realizes that the distinctive attribute of the "Code Killer" was that the nine-digit identifying code did not include a one, and that "Noone" ("no one") is actually the Code Killer. By following the contact information on Noone, McCaleb and Jaye Winston find the Code Killer's files, which prove that he had deliberately killed three people to get McCaleb a new heart. Although McCaleb is thus cleared, the fact that Gloria's death was directly due to his illness creates a rift in his increasingly personal relationship with Graciela and her nephew Raymond, Gloria's son.
McCaleb, who is still supposed to be inactive, secretly continues to trace the Code Killer from information that he learned during his interview with "Noone" and drives to a location in Baja California that matches one Noone described. He then finds and is overpowered by the Code Killer, who tells him that he has kidnapped Graciela and Raymond and buried them alive. Despite serious medical problems from so much activity, McCaleb is able to kill him and then uses the little information he has to locate and rescue Graciela and Raymond. Upon his return, he apologizes to his doctor and says that he went to Mexico because he needed a vacation. Only Jaye Winston among the law enforcement officials figures out what really happened.