Is it possible to write that "My cat caught 3 mice today." I think it is better to use present perfect: "My cat has caught 3 mice today" because the cat may catch another one or many more till the day is finished.(if he is a good hunter)
Use of the present perfect always depends on context.
The present perfect is not a past tense and it does not recount events; it is a present tense which mentions past events. So if you are narrating past events - what happened this morning, or the history of your cat's predations, for instance - use the simple past.
But if you are speaking of the present situation - your current infestation with mice, or the extraordinary cleverness of your cat - and you wish merely to mention your cat's prior predations as an example of these, use the present perfect.
This is treated in more detail than you probably want at What is the perfect, and how should I use it?, particularly sections 3.1 Grammatical meaning, 3.2 Pragmatic meaning and 4.When and how should I use the perfect?
After coming home from work you could say either one: "my cat caught three mice today" or "my cat has caught three mice today."
Don't let grammar rules constrain expressiveness. It all depends on what you want to communicate, and not necessarily the precise, scientific concept of the probability that your cat might catch another mouse before the official end of the day. You might want to tell a story using a more simple, dramatic, active voice:
"You won't believe what I found when I got home from work. My cat caught three mice today and put them all at my bedroom door like they were a present for me!"
"Eww that's gross!"
"Yeah, I know. It makes me feel bad. But I feed her good food so I guess she's just returning the favor!"
Alternatively, if it's early in the day or you want to hold out hope that your cat might catch more mice because you're proud of your cat's hunting skills, then you are surely within your grammar rights to stick with the present perfect and say "My cat has caught three mice today. And I think he'll catch another two or three before I go to bed!"
The past tense is used to describe an action that finished/happened in the past, whereas the present perfect is used for an action which has happened within a specific time period which is not over at the moment of speaking.
So it can depend on the time the sentence is stated. For example, if it is 9:00 PM and your cat caught the mice in the morning, then you could say either of the following:
- "My cat caught three mice this morning." (The past tense is ok.)
- "My cat has caught three mice so far today." (The present perfect tense is ok because the day is not over yet.)