We are an IT services company (we develop products for others) and we use Scrum.
Primary tool is Jira, but in some cases we use tools mandated by our clients (StoriesOnBoard etc). All the backlog is captured within the tool and the team is able to estimate what can be developed in a single iteration. At the end of the sprint, we demo to the client. This gives us couple of advantages:
Of course it still depends on the people you put in the process. There are still quite a few projects where we struggle. But mostly, we find Scrum useful.