code: def get_endpoint_w_server_list(endpoint_id):
      
      client = get_client()
  
      endpoint = client.get_endpoint(endpoint_id)
  
      if endpoint["host_endpoint_id"]:  # not GCS -- this is a share endpoint
          raise click.UsageError(
              dedent(
                  u"""\
              {id} ({0}) is a share and does not have servers.
  
              To see details of the share, use
                  globus endpoint show {id}
  
              To list the servers on the share's host endpoint, use
                  globus endpoint server list {host_endpoint_id}
          """
              ).format(display_name_or_cname(endpoint), **endpoint.data)
          )
  
      if endpoint["s3_url"]:  # not GCS -- legacy S3 endpoint type
          return (endpoint, "S3")
  
      else:
          return (endpoint, client.endpoint_server_list(endpoint_id))
docs: A helper for handling endpoint server list lookups correctly accounting
      for various endpoint types.
  
      - Raises click.UsageError when used on Shares
      - Returns (<get_endpoint_response>, "S3") for S3 endpoints
      - Returns (<get_endpoint_response>, <server_list_response>) for all other
        Endpoints