Mr McDonnell, a key ally of Jeremy Corbyn, said in an appearance at the Edinburgh Fringe Festival that a future Labour Government would not stand in the way of a second referendum on Scottish independence.
The Shadow Chancellor cited the plans of First Minister Nicola Sturgeon to hold another poll within the next two years, telling Iain Dale:
"It will be for the Scottish Parliament and the Scottish people to decide that.
"They will take a view about whether they want another referendum. Nicola Sturgeon said by late next year or the beginning of 2021."
"We would not block something like that. We would let the Scottish people decide. That's democracy."
His comments were seen as undermining Scottish leader Richard Leonard, who has hit out in a statement and rejecting the position articulated by Mr McDonnell.
Mr Leonard said: “I met with John this morning, and I made clear to him that a second independence referendum is unwanted by the people of Scotland and it is unnecessary.
“The 2014 referendum was a once in a generation vote.
“There is no economic case for independence, especially with the SNP’s new position of ditching the pound and new policy of turbo-charged austerity to bear down on the deficit.
“On that John McDonnell and I are in firm agreement - what Scotland needs is radical reforming Labour governments at Holyrood and Westminster.”
Ruth Davidson called McDonnell's comments a 'betrayal' of No voters, while Edinburgh South MP Ian Murray said: "These are utterly irresponsible comments from John McDonnell that betray our party's values.
"The Labour Party is an internationalist party founded on a vision of solidarity and we should never seek to appease nationalists, whether they be for Brexit or Scottish independence, who want to divide communities and people."
SNP MSP Jenny Gilruth said: “With a No Deal Brexit approaching, we urgently need clarity from Richard Leonard and Scottish Labour.
“It’s a bit embarrassing that Westminster Labour politicians have done more than their Holyrood colleagues to defend the democratic rights of the people of Scotland.
”Unless Scottish Labour join the SNP in defending Scotland’s right to hold an independence referendum, they’ll be lending their backing to the a jobs-wrecking Tory Brexit and will continue their slide into complete irrelevance.”
The row comes as a new poll suggested that a majority of Scots are now in favour of independence.