Mikaeel Kular's mother said she last saw her son when she put him to bed Wednesday night, the Scotsman reported.
Assistant Chief Constable Malcolm Graham said at a news conference that the body was found in Fife, across the Firth of Forth from Edinburgh. Graham, who appeared upset by the discovery, released few details, saying only that a person had been detained for questioning.
The Scotsman said the suspect is believed to be Mikaeel's mother, identified by neighbors as Rosdeep Kular, 33.
Police said Mikaeel had not been at his nursery school since the Christmas break, which ended Jan. 7. They were told he had been suffering from a bad cold.
The report that Mikaeel was missing set off an intensive search with volunteers joining police to search the area near the Kulars' home. They live in Cramond, not far from the Firth, an inlet several miles wide in the Edinburgh area.
On Friday, police said a witness reported seeing a small boy matching Mikaeel's description about a mile from the Kular home on Thursday morning. Investigators were able to find security camera footage showing a child but could not confirm it was the missing boy.
Biologists detail four new deep-sea 'killer sponges'
Pregnant Mila Kunis wins 'Best Villain' at MTV Movie Awards