add new server function