1. A computer-implemented method for generating a media recommendation, comprising: receiving by a server from a plurality of user devices a plurality of play histories of media items played by a plurality of users, wherein each play history of the plurality of play histories indicates media items played by a corresponding one of the plurality of users and is tagged with time and location of play for each of at least a portion of the media items indicated in the play history; receiving by the server a media recommendation request from a requester, including receiving seed information, wherein the received seed information indicates a current location of the requester; identifying correlated users among the plurality of users by using at least one user preference of the requester and the received seed information in order to search corresponding play histories from among the plurality of play histories that correspond to the identified correlated users; comparing the received seed information to the corresponding play histories and generating a list of related media items from the corresponding play histories; and returning the list of related media items to the requester.