feat: add discovery server