Mark
For two reasons:
it's a feline way of saying "look what I can do!"
cats don't think humans know how to hunt and of course don't know about supermarkets
?
It is actually part of their instinct to take their catch to a place of safety before eating it. Cats want privacy and safety before settling down to eat. These days that safe place is home. So they're driven to bring it home, but then usually they lose interest because they aren't actually hungry.
We love to think they're trying to provide for us useless hunters. It isn't so, but there's no problem with viewing it that way.
John Alden
It is a present for you.
Evie
You are their family so they bring you a gift of food. If my cat brings in a live bird I do my best to rescue that bird and set it free again outside. My cat once brought me a big black raven and placed it by my bed, it was a bit of a shock but I put it out for the fox that night lol.
Entropy
Because you are part of their pack/family. In the wild, a cat who is with a group would bring kills back to the group. Though...likely he ate his fill first. It's their natural instinct.