On the dwarf planet Ceres, Detective Miller is tasked with finding Julie Mao and returning her to her rich parents on Luna. In New York, UN executive Chrisjen Avasarala interrogates a captured operative of the Outer Planets Alliance (OPA), a militant Belter group, about contraband stealth technology. Underway to Ceres, the ice trawler Canterbury receives a distress signal from the freighter Scopuli, and Executive Officer Jim Holden is ordered to lead a rescue mission with the ship's engineer Naomi Nagata, the mechanic Amos Burton, the pilot Alex Kamal, and the medic Shed Garvey. They find the ship empty but for a distress transmitter, but as their shuttle heads back to the Canterbury, a stealthed ship destroys the ice carrier with nuclear torpedoes.
On Ceres, Miller investigates the theft of water, now severely rationed due to the Canterbury's failure to arrive. In Julie Mao's apartment, he finds clues placing her aboard the Scopuli. On Earth, Avasarala sends the suspected OPA captive to Luna after her superior, Undersecretary Sadavir Errinwright, disapproves of "gravity torture", but the captive commits suicide. In the asteroid belt, the Canterbury's shuttle is damaged by debris from the ice hauler's destruction. Using the last of their air, the survivors build an improvised antenna to place a distress call, which is responded to by the Martian navy's flagship, the MCRN Donnager. After Nagata identifies the distress transponder aboard the Scopuli as using Martian military technology, Holden broadcasts a message to that effect to the Solar System, as insurance against being killed as inconvenient witnesses.
Holden's broadcast triggers protests on Ceres, with the OPA blaming Mars for the destruction of the Canterbury. In the course of unhappy riots, Miller's partner Havelock is attacked, almost fatally, and a man with the handle "Nightbandit31", with whom Mao was in contact, is killed. On Earth, Avasarala tests her theory that Mars was behind the attack by leaking to Mars information about the transfer of Martian stealth technology to the OPA. She deduces from the panicked Martian reaction that Mars was not responsible – but that somebody else wants to start a war. Aboard the Martian warship Donnager, the Canterbury's survivors are detained and questioned, with Nagata in particular being suspected of being part of an OPA sleeper cell. Complicating matters further, an unidentified ship flies towards the Donnager, ignoring all requests to divert or identify themselves.
On Ceres, Miller identifies the dead "Nightbandit31" as Bizi Betiko, a data broker with an implanted, encrypted memory storage device, only to discover the real Betiko is still alive. In the asteroid belt, the Donnager's pursuers reveal themselves as six ships of the type that had attacked the Canterbury, and begin firing torpedoes. Unexpectedly at a technological disadvantage, the Martian ship takes heavy damage, and Shed Garvey is killed by a railgun shot. As the Donnager is being boarded, the surviving Canterbury crew are evacuated on the Martian captain's orders, narrowly escaping aboard a corvette from Donnager's bay immediately before the Donnager self-destructs to avoid capture. Far from the battle, at Tycho Station, where a massive generation ship, the Nauvoo, is being built on behalf of the Mormon Church, station manager, and leader of the OPA, Fred Johnson turns the Nauvoo's sensors towards the battle.
For lack of options, the Canterbury's survivors accept a proposal by OPA leader Fred Johnson to join him at Tycho Station, and with his help they modify the ship's transponder, renaming their salvaged ship the Rocinante, to hide the fact it's a Martian warship. A flashback shows how Johnson became "The Butcher of Anderson Station" eleven years ago: as a UN Marine colonel, he led an assault on a station occupied by protesting miners, killing all despite their attempts at surrender. On Ceres, Miller finds evidence linking Julie Mao to the OPA, who try to recruit him through their local agent Anderson Dawes. While leaving Julie's apartment with the data chip, Miller is abducted by unknown people.
On Ceres, Miller is interrogated and tortured by Dawes, demanding to know what he has learned about Julie. Miller escapes, with fellow officer Octavia Muss, and discovers revealing information on a hidden data cube, a major secret. Upon revealing his discovery to his boss, she fires Miller and takes all information regarding the case. Avasarala wants a spy on Tycho Station, and makes things personal to get her way. Holden and crew arrive at Tycho Station, with Fred Johnson planning to leverage Holden's testimony for legitimacy with the UN. Holden makes an uneasy alliance, sharing everything he knows about the destruction of the Canterbury and the MCRN Donnager. Johnson seems fairly convinced neither Earth nor Mars was behind the attacks. After disguising the Rocinante as a simple gas hauler, they set out for Eros to pick up a potential survivor of the Scopuli.
During a visit to Holden's co-op parents' house in Montana, Avasarala learns of Holden's troubled childhood and gains some insight into his recent decisions. On their way to Eros, the crew of the Rocinante realize too late that Kenzo, a spy from Tycho station is onboard and has inadvertently got the attention of a Martian patrol. Kenzo helps obtain the MCRN codebook from the ship's safe, and with a few code words the patrol backs off, believing the Rocinante to be a Martian black ops ship. Miller departs Ceres for Eros, with a new piece to the mysterious puzzle surrounding Julie Mao.
The Rocinante arrives at their true destination, an asteroid at coordinates given by Fred Johnson and discovers the Anubis, the stealth ship that destroyed the Canterbury. It's empty aside from a mysterious organic substance that is covering the ship's reactor. They scuttle the stealth ship, then head to Eros to find a survivor of the Scopuli codenamed Lionel Polanski, who escaped the Anubis on its shuttle. Miller is also tracking down Polanski, identifying her as Julie Mao. Arriving at Eros, Holden and his team are ambushed at the hotel where Polanski is staying by a UN black ops team (signaled by Kenzo, and authorized by Errinwright), but are saved by Miller. After joining up, Holden's team and Miller go to meet Julie Mao only to find her dead, infected by the same substance from the Anubis.
The events leading up to Julie Mao's infection by the unknown biohazard on the Anubis and gruesome death in her hotel room on Eros are revealed in a flashback. Fred Johnson broadcasts evidence that the stealth ships were built on Earth. After Miller and the Rocinante crew flee the hotel, Julie's body is found and studied by Dresden, a scientist working for Julie's father Jules-Pierre Mao, who harvests her infected blood. Under the guise of a ship explosion and radiation leak, mercenaries loyal to Julie's father and Dresden place Eros into lockdown and seal the poverty-stricken citizens into radiation shelters after infecting them with Julie's blood. Most of the Rocinante crew head back to the ship, while Miller and Holden go to investigate the shelters. Discovering their true purpose as incubators for the infection, with everyone inside dead or dying, they also receive a lethal dose of radiation.
The Rocinante crew, Miller and Holden (suffering from radiation sickness), make their separate ways through the increasingly horrific situation on Eros towards the ship. They theorise that the conspirators behind the stealth ships are using the population as food for the "protomolecule" infection. Miller begins to see hallucinations of Julie Mao. Amos kills Miller's friend, Inspector Sematimba, after he holds Nagata at gunpoint when she refuses to launch the Rocinante without Holden. Miller and Holden make it to the ship, which escapes, and are treated for radiation sickness. On Earth, Avasarala's investigation is stopped by Errinwright, who is part of the Mao conspiracy. On Eros, the UN spy Kenzo is left to be consumed by the rapidly advancing Protomolecule infesting the colony.