add server funciton