SSL already provides a secure connection which protects data in transit between client and server. It ensures confidentiality and integrity, and, indeed, uses HMAC for the latter. If your security model is about attackers who might try to alter messages while they travel from the client to the server and back, then adding your own HMAC is redundant and useless.
SSL, though, is pure tunnelling. It ceases to act when the data has reached its destination. If your security model is about an attacker who may modify data stored on your server, then the fact that SSL was used to transfer such data contributes nothing to the protection against that attacker. In that setup, the actual existence of a client and a network is irrelevant; this is a storage problem, not a network problem. HMAC may help, but only if the attacker cannot learn the HMAC key, which is a restrictive scenario.
The really important question to ask first is: what can the envisioned attacker actually do ?