Is it overkill? I can't comment as to that. I will state that it's probably less secure than using only one of the methods (in terms of information theory).
The reason is that you're actually supplying more information to a prospective hacker by giving the results of multiple hashing algorithms.
There's nothing at all secretive about the algorithms used in these hashing methods. Hashing removes information by virtue of the fact that, while it's reversible, there are are large number of possible texts that could produce the same hash.
However, in providing multiple hash outputs, you effectively remove a lot of those possibilities since, for example, the number of texts that can produce a particular MD5 is intersected with those that produce a particular SHAx.
Think in terms of the MD5 hash you have. Maybe there are a trillion different texts that can produce that value. That's an awfully large search space.
Now consider the SHAx hash. There may also be a trillion different texts that can produce it. Again a large search space.
But, if the intersect of those two search spaces is forty-two different texts, that wouldn't take long to crack.
Cryptography is not for the faint of heart, or for those that haven't got a doctorate in the field :-)