It's actually quite a simple calculation and a few ways of doing this without buying tools, all it is, is the number of sites competing for any given keyword or phrase.
A good free quick guide is to search for your keyword in google and look at how many results are returned. If the number is low then you can be pretty sure that its a low or high competitive keyword. Also check if there are any advertisers already showing. I tend to put "" around the phrase so it only searches for exact phrases.
Google however can go one step further as they also know how many people are placing adverts for that keyword and the number of people searching.
So although the math's are really simple to model most tools other than google won't have access to the data.
Competitiveness = Number of searches / advertisers
Although these figures are not available to people outside google you can get fairly close to working out from just using google search yourself.
The other route is to create yourself a free google adwords account and setup a campaign. That gives you access then to google's keyword planner which tells you if your phrase or keyword is what they consider competitive.