The best explanation for why Parliament repealed the Stamp Act is:
Boycotts and other direct protests in the colonies made the Stamp Act ineffective at bringing in money.
The widespread boycotts and protests in the colonies significantly impacted British merchants and the economy, leading Parliament to reconsider the effectiveness of the Stamp Act.