The Labour shadow chancellor bemoaned the “instability and insecurity” caused the proposed draft deal put forward by the Prime Minister, who has faced fierce opposition since announcing it last week.
Mrs May has staved off a Cabinet rebellion and shored up support for her leadership after a wave of ministerial resignations and a backbench coup threatened to oust her from Downing Street.
As she heads for crunch talks in Brussels today, McDonnell outlined Labours approach to handling Brexit should her deal be rejected by the House of Commons, which is thought to be an increasingly likely prospect.
McDonnell said Labour would press for a second EU referendum in the event Mrs Mays deal is defeated and a majority for a general election cannot be secured.
"We just can't go on like this,” he said in a speech at Reuters in London.
ADMISSION: John Mcdonnell said a second EU referendum could produce a 'similar' result (Pic: REUTERS)
“We just cannot go on with this instability, uncertainty that there is in government, day by day and sometimes hour by hour."
However, he admitted a general election could prove “very difficult” because, under the Fixed Term Parliaments Act, a two-third majority of MPs is required to trigger an early national poll.
McDonnell, a longtime ally of Labour leader Jeremy Corbyn, said his party would seek “some second referendum” but admitted the “nature of the vote” was yet to be determined.</span></span>
“We just can't go on like this”
Taking questions from reporters, McDonnell, 67, denied a second Brexit poll – dubbed a “Peoples Vote” by campaigners – would be the “death of democracy”.
He said: "No, it's not going to be the death of democracy… We just have to bring the country back together again.”
The avowed socialist did concede that the vote might result in the same outcome – a victory for Leave.
“I have seen various polls about shifts in attitude,” he said,
“There have been shifts but they seem to have gone either way and so my fear is that if we did have another referendum we might get a same or similar result and the country would still be divided.”</span></span>
LABOUR: McDonnell delivers a speech at a Reuters Newsmaker event in London (Pic: REUTERS)
McDonnell said there was not a majority in parliament for either Mrs May's deal or for leaving the European Union without a deal.
"I think an overwhelming majority oppose anything that smacks of being no deal," he said
"Then we could be into a situation of a war of attrition within parliament of amendments to legislation taking place and uncertainty continuing.”
Asked about how many Labour MPs might rebel and vote for Mrs May's Brexit deal, he indicated none would.
"I think we'll hold our side now. I really do, and we have done on the votes this week," he said.
CLINGING ON: Theresa May faces a vital Commons vote on her Brexit deal (Pic: GETTY)
Meanwhile, the PM is due to meet EU commissioner Jean-Claude Juncker for talks about any final tweaks to the draft withdrawal agreement before an extraordinary summit of EU leaders.
Downing Street said the meeting was part of the "ongoing negotiations over the future framework" agreement with the EU.
Tensions remain high in Westminster after the DUP delivered a warning shot across government bows, accusing the PM of breaking fundamental promises on Brexit.
And a number of Tory MPs are still pushing for a vote of confidence in the PM, although their attempts to topple her appear to have stalled.</span>