1. An animation server system for providing recommendations for adding animations to a sequence of animations comprising: at least one processor; and at least one non-transitory computer readable storage medium storing instructions that, when executed by the at least one processor, cause the system to: identify an animation sequence for a 3D character, the animation sequence comprising a first animation; receive a request to provide an animation recommendation that recommends at least one animation to add to the first animation in the animation sequence; locate a node on a taxonomy tree that matches an identified animation category of the first animation, wherein the taxonomy tree comprises a set of nodes, wherein each node represents an animation category comprising a plurality of animations, wherein each node is directly connected to at least one other node to form a logical animation transition between the directly connected nodes, and wherein traversing the taxonomy tree between two adjacent nodes results in a smooth sequence of animations; traverse one or more directly connected nodes on the taxonomy tree to identify one or more additional animations that result in a smooth sequence of animations when added to the first animation; generate a recommendation list comprising the one or more additional animations; provide the recommendation list to a client device associated with a user; receive, from the client device, a selection of an animation selected from the recommendation list; and concatenate the selected animation to the first animation in the animation sequence.