Have you talked to your neighbor and asked them? Maybe they will have a solution? If not, I'd be pissed... To the point where I'd tell them either keep their cat indoors or start paying for a new top for your car.
They could declaw the cat, but then the cat would have no defense since it's obviously an outdoor cat. That would be a tad cruel.
I think the best thing to do is if you see the cat on your car, spray it with water. This works better than you may think... Eventually the cat will get in it's head that he/she is not supposed to be in that spot. I'm talking supersoaker that thing! However, the only problem is once you hit that cat with water, those claws will come out and he/she will bolt off of that car quick. So, it might mess up your car even more...
Hmm... no good solution. I say go talk to your neighbors first. Then if they don't do anything about it like keep the cat indoors or keep an eye on the cat and make sure it's not on your car, I say call animal control.... I don't know what they'll do, but I would try.
That would make me SO mad. My friends cat used to crawl all over my S2000 when I went to his house and I would get pissed. He made sure he kept her in doors when I was over.