The process of verifying integrity through MAC involves two separate algorithms (as mentioned here). On the server side, a
signing algorithm runs which calculates the MAC of the message using the shared key, while on the client side, a
verification algorithm runs which uses the secret key, the received MAC and the message to verify whether the message was altered in transit or not.
But we can simply dispense with a separate verification algorithm by simply calculating the MAC of the received message using the shared key. If the calculated MAC and received MAC are the same, the message has not been altered.
Is that what actually happens in all MAC verification algorithms?