add: server mode support