First, live footage from Al Jazeera at the time showed rockets firing from a location in Gaza toward Israel. One rocket appeared to malfunction in mid-air and within a few seconds, an explosion happened on the ground approximately where the hospital is. The lean-too shape of the hospital roof can even be seen in the light from the explosion.
Second, daytime footage after the explosion showed that the hospital was still standing, with burned out cars in the parking lot. Several palm trees nearby were standing and unscathed (it was hard to tell if there were even scorch marks). The parking lot had a small crater maybe a meter in diameter with very little penetration into the ground. Israel's weapons have much stronger explosives, which would likely have completely destroyed the parking lot and wreaked havoc on adjacent buildings.
IMO, those two pieces of evidence strongly indicate to me that the Palestinians fired this rocket and it accidentally caused an explosion in the hospital parking lot.
One confusing aspect of the story to me is the death toll given in a matter of minutes after the explosion. It seems extremely improbable to me that anyone could confidently say 500 people died so quickly unless they were spreading propaganda.