For the OPs benefit - GLUT, GLFW, etc are nothing more than helper libraries. Their job is to deal with the painful (and non-cross-platform) task of creating a window, initializing a GL context, getting function pointers, etc. This next bit is important. Aside from that, they really have nothing much to do with GL itself; they just wrap the native API calls that would otherwise be used to get things up and running.
One major reason why they exist is for e.g. tutorials, sample code, and the like. The native API code to do all this stuff can be huge, and when you're making a tutorial you really don't want the tutorial-specific code to be swamped by all of this extra stuff. You want to focus on the lines of code that are relevant to the tutorial.
They can also serve another purpose in terms of providing a (at least) reasonably cross-platform way of getting a GL context up. Some even provide other services (input, sound, etc) which may range in implementation from simplistic to comprehensive, but for the purposes of OpenGL itself, once that context is up, they step back and everything is just native GL code from there.
If you want to see how a real-life commercial game handles window and GL context creation, you could do a lot worse than look at the source code for one.