Being honest is always a good idea. But, of course, you want to balance that with making sure you understand your audience, and you need to be okay with the result of your honesty.
In other words, if being honest means you don't get the job, sometimes that's a good thing. Don't let fear of losing the opportunity cause you to be dishonest. If you're liable to jump ship if they ever change tech stacks, because working with a specific tech stack is the most important thing to you, then it's perfectly reasonable to focus on looking for an employer where that won't be an issue, and hence it's reasonable to give that as your answer to this question. In other words, if it's really that important to you, then be completely honest about it.
But if there are things that are less important, you don't want to give the impression that they are critical factors, so you may want to leave them out. So in some cases, you may choose to be honest, but not delve into every single detail.
To put this in context for your particular situation, telling them that,
you believe to be a good fit in the role and that you would like to work with the tech stack they have
is perfectly fine - in fact, most employers would expect you to think you're a good fit for the role - otherwise, why would you be applying? And most employers will be happy that you like their tech stack and are interested in working with it. If those are important things for you, and you can say them honestly, then do so. They don't inherently carry any negative connotation and they are much more innocuous than other answers to that question I've heard.