code: def create(self, name, procParams, sslParams={},
                 auth_key=None, login=None, password=None,
                 auth_source='admin', timeout=300, autostart=True,
                 server_id=None, version=None):
          
          name = os.path.split(name)[1]
          if server_id is None:
              server_id = str(uuid4())
          if server_id in self:
              raise ServersError("Server with id %s already exists." % server_id)
  
          bin_path = self.bin_path(version)
          server = Server(os.path.join(bin_path, name), procParams, sslParams,
                          auth_key, login, password, auth_source)
          if autostart:
              server.start(timeout)
          self[server_id] = server
          return server_id
docs: create new server
          Args:
             name - process name or path
             procParams - dictionary with specific params for instance
             auth_key - authorization key
             login - username for the  admin collection
             password - password
             timeout -  specify how long, in seconds, a command can take before times out.
             autostart - (default: True), autostart instance
          Return server_id
             where server_id - id which can use to take the server from servers collection