We apply elementary canonical methods for the quantization of 2+1 dimensional gravity, where the dynamics is given by E. Witten’s ISO(2, 1) Chern-Simons action. As in a previous work, our approach does not involve choice of gauge or clever manipulations of functional integrals. Instead, we just require the Gauss law constraint for gravity to be first class and also to be everywhere differentiable. When the spatial slice is a disc, the gravitational fields can either be unconstrained or constrained at the boundary of the disc. The unconstrained fields correspond to edge currents which carry a representation of the ISO(2, 1) Kac-Moody algebra. Unitary representations for such an algebra have been found using the method of induced representations. In the case of constrained fields, we can classify all possible boundary conditions. For several different boundary conditions, the field content of the theory reduces precisely to that of 1+1 dimensional gravity theories. We extend the above formalism to include sources. The sources take into account self-interactions. This is done by punching holes in the disc, and erecting an ISO(2, 1) Kac–Moody algebra on the boundary of each hole. If the hole is originally sourceless, a source can be created via the action of a vertex operator V. We give an explicit expression for V. We shall show that when acting on the vacuum state, it creates particles with a discrete mass spectrum. The lowest mass particle induces a cylindrical space-time geometry, while higher mass particles give an n fold covering of the cylinder. The vertex operator therefore creates cylindrical space-time geometries from the vacuum.