I have not seen it done with mshr (most people use mshr for semi-simple geometries, Where one can use geometrical subdomain markers).
There is STL support in Gmsh. I would Also recommend writing/reading meshes in the xdmf format, as it is more suitable for parallel computing. See this Transitioning from mesh.xml to mesh.xdmf, from dolfin-convert to meshio or this Converter from GMSH to XDMF (with physical groups) post.