I have no doubt that the money changers and sellers of animals were providing a service for worshippers. They were not merely providing souvenirs, but things that were needed to fulfil the Mosaic law.
But Jesus drove them out. He was not being pragmatic. Zeal for the temple had consumed him: his rebuke follows the rebuke of Nehemiah. And he was not polite. Using a whip is not polite. This is not a pleasant and reasonable man. This is a man using force, the threat of terror.
But he was holy. He was separating that which is of God from the commerce and effort that produced it.
John 2
13The Passover of the Jews was near, and Jesus went up to Jerusalem. 14In the temple he found people selling cattle, sheep, and doves, and the money changers seated at their tables. 15Making a whip of cords, he drove all of them out of the temple, both the sheep and the cattle. He also poured out the coins of the money changers and overturned their tables. 16He told those who were selling the doves, “Take these things out of here! Stop making my Father’s house a marketplace!” 17His disciples remembered that it was written, “Zeal for your house will consume me.”
via Daily Lectionary Readings — Devotions and Readings — Ministries & Programs — GAMC.
One of the things that we talk little about now is money and the business of Church. In this passage, I see that Jesus is trying to remove the commercial from the holy. Yet, we can let it drift in. We plead for money to continue this or that ministry. And at times of emergency we should. But should this in worship? Our offerings there should be of thanksgiving, not bullied out of us. And they should be hidden.