On March 27, 1987, he was dealt by the Kansas City Royals to the New York Mets along with Chris Jelic for Rick Anderson, Mauro Gozzo, and Ed Hearn. On August 27, 1992, the New York Mets traded him to the Toronto Blue Jays for a player to be named later and Jeff Kent. The Blue Jays sent Mike Stanton to the Mets in return. Cone made his debut with the Mets on April 17, 1987, against the Los Angeles Dodgers at Dodger Stadium. He went 2-for-4 with a home run and four RBIs. His first career hit was a single off of Tom Candiotti in the third inning. The Mets lost that game 9-7. In 1988, he played in 95 games for the Mets and finished with a.272 average, 26 HRs and 89 RBIs. He started well with a.917 OPS in his first 37 games before hitting just.220 with five homers and 34 RBI over his final 58 contests. In 1989, Cone played in only 46 games due to injuries. He finished with a.275 average, 12 HRs and 39 RBIs. After the season, he filed for free agency but returned to the Mets after they offered him a contract. In 1990, he started 57 games for the Mets and finished with a.276 average, 16 HRs and 52 RBIs.