code: def list_providers(parsed_args: Namespace) -> None:
      master_info = api.get(
          parsed_args.master, "info", authenticated=False
      ).json()
  
      try:
          sso_providers = master_info["sso_providers"]
      except KeyError:
          raise EnterpriseOnlyError("No SSO providers data")
  
      if len(sso_providers) == 0:
          print("No SSO providers found.")
          return
  
      print(
          "Available providers: "
          + ", ".join(provider["name"] for provider in sso_providers)
          + "."
      )
  
file_path: determined/harness/determined/cli/sso.py
imports: import sys
  import webbrowser
  from argparse import Namespace
  from getpass import getpass
  from http.server import BaseHTTPRequestHandler, HTTPServer
  from typing import Any, Callable, List
  from urllib.parse import parse_qs, urlparse
  from determined.common import api
  from determined.common.api import authentication
  from determined.common.declarative_argparse import Arg, Cmd
  from determined.errors import EnterpriseOnlyError
label_desc: Use image node_id 4 for calling a global function with example usage: list_providers(parsed_args) without return types