add server funtionality