The Republican senator said at a press conference in Belgrade that he believes "the Russians knew about chemical weapons because they were operating exactly from the same base".
He said the US launched cruise missile strikes last week against the Syrian base "in a response to a chemical attack".
"I hope that this behaviour by Syria, in what clearly is cooperation with Russia and Syria together, will never happen again," he said.
"I would prevent Bashar Assad from flying from his airfields if he doesn't renounce the use of these weapons," the former American airman said. "The United States should first tell Russia that this kind of a war crime is unacceptable in the world today."
More From This Section
He said the upcoming visit by US Secretary of State Rex Tillerson to Moscow should "lead to an agreement on the part of the Russians that they will not allow Syria to ever again use chemical weapons".
He also said he would "make sure that we arm and train some of those who fight against Bashar Assad".
McCain is on a tour of the western Balkans, the war-weary European region where Russia has been vying for increased military, political and economic influence.