Multicast routing protocols in wireless sensor networks are required for sending the same message to multiple different destinations. In this paper, we propose two different distributed algorithms for multicast routing in wireless sensor networks which make use of location information of sensor nodes. Our first algorithm groups the destination nodes according to their angular positions and forwards the multicast message toward each group in order to reduce the number of total branches in multicast tree which also reduces the number of messages transmitted. Our second algorithm calculates an Euclidean minimum spanning tree at the source node by using the positions of the destination nodes. The multicast message is forwarded to destination nodes according to the calculated MST. This helps in reducing the total energy consumed for delivering the message to all destinations by decreasing the number of total transmissions. Evaluation results show that the algorithms we propose are scalable and energy efficient, so they are good candidates to be used for multicasting in wireless sensor networks.