> ## Documentation Index
> Fetch the complete documentation index at: https://conductorone-leet-slack-mcp-docs.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# List Catalog

> ListCatalog returns all available MCP server catalog entries.



## OpenAPI

````yaml https://spec.speakeasy.com/conductor-one/conductorone/my-source-with-code-samples get /api/v1/mcp_server_catalog
openapi: 3.1.0
info:
  description: The C1 API is a HTTP API for managing C1 resources.
  title: C1 API
  version: 0.1.0-alpha
servers:
  - description: The C1 API server for the current tenant.
    url: https://{tenantDomain}.conductor.one
    variables:
      tenantDomain:
        default: example
        description: The domain of the tenant to use for this request.
security:
  - bearerAuth: []
    oauth: []
paths:
  /api/v1/mcp_server_catalog:
    get:
      tags:
        - MCP Servers
      summary: List Catalog
      description: ListCatalog returns all available MCP server catalog entries.
      operationId: c1.api.ai_governance.v1.MCPServerService.ListCatalog
      parameters:
        - in: query
          name: page_size
          schema:
            description: Page size (max 100).
            format: int32
            type: integer
        - in: query
          name: page_token
          schema:
            description: Page token for pagination.
            type: string
        - in: query
          name: query
          schema:
            description: Optional text query to filter catalog entries by display name.
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/c1.api.ai_governance.v1.MCPServerServiceListCatalogResponse
          description: >-
            MCPServerServiceListCatalogResponse returns a paginated list of
            catalog entries.
      x-codeSamples:
        - lang: go
          label: ListCatalog
          source: "package main\n\nimport(\n\t\"context\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/shared\"\n\tconductoronesdkgo \"github.com/conductorone/conductorone-sdk-go\"\n\t\"github.com/conductorone/conductorone-sdk-go/pkg/models/operations\"\n\t\"log\"\n)\n\nfunc main() {\n    ctx := context.Background()\n\n    s := conductoronesdkgo.New(\n        conductoronesdkgo.WithSecurity(shared.Security{\n            BearerAuth: \"<YOUR_BEARER_TOKEN_HERE>\",\n            Oauth: \"<YOUR_OAUTH_HERE>\",\n        }),\n    )\n\n    res, err := s.MCPServer.ListCatalog(ctx, operations.C1APIAiGovernanceV1MCPServerServiceListCatalogRequest{})\n    if err != nil {\n        log.Fatal(err)\n    }\n    if res.MCPServerServiceListCatalogResponse != nil {\n        // handle response\n    }\n}"
components:
  schemas:
    c1.api.ai_governance.v1.MCPServerServiceListCatalogResponse:
      description: >-
        MCPServerServiceListCatalogResponse returns a paginated list of catalog
        entries.
      properties:
        list:
          description: List of catalog entries.
          items:
            $ref: '#/components/schemas/c1.api.ai_governance.v1.MCPServerCatalogEntry'
          type:
            - array
            - 'null'
        nextPageToken:
          description: Token for next page.
          type: string
      title: Mcp Server Service List Catalog Response
      type: object
      x-speakeasy-name-override: MCPServerServiceListCatalogResponse
    c1.api.ai_governance.v1.MCPServerCatalogEntry:
      description: MCPServerCatalogEntry describes a supported MCP server in the catalog.
      properties:
        authModes:
          description: |-
            Authentication methods this server supports. The first entry is the
             catalog-prescribed default. Empty when the impl declares no auth.
          items:
            $ref: >-
              #/components/schemas/c1.api.ai_governance.v1.MCPServerCatalogAuthMode
          type:
            - array
            - 'null'
        baseUrl:
          description: >-
            Connection base URL declared by the impl. May be a ${VAR} template
            over
             config_schema fields (e.g. "https://${workspace}.app.n8n.cloud/mcp-server/http");
             the UI substitutes the admin's config-field values to preview the resolved
             endpoint. Empty when the impl declares no base URL.
          type: string
        channel:
          description: Release channel for this catalog entry.
          enum:
            - MCP_SERVER_CATALOG_CHANNEL_UNSPECIFIED
            - MCP_SERVER_CATALOG_CHANNEL_STABLE
            - MCP_SERVER_CATALOG_CHANNEL_BETA
            - MCP_SERVER_CATALOG_CHANNEL_ALPHA
          type: string
          x-speakeasy-unknown-values: allow
        configSchema:
          oneOf:
            - $ref: >-
                #/components/schemas/c1.api.ai_governance.v1.MCPServerCatalogConfigSchema
            - type: 'null'
        defaultAuthMethod:
          deprecated: true
          description: 'Deprecated: read auth_modes instead.'
          enum:
            - MCP_SERVER_AUTH_METHOD_UNSPECIFIED
            - MCP_SERVER_AUTH_METHOD_NONE
            - MCP_SERVER_AUTH_METHOD_BEARER_TOKEN
            - MCP_SERVER_AUTH_METHOD_OAUTH2
            - MCP_SERVER_AUTH_METHOD_CUSTOM_HEADER
            - MCP_SERVER_AUTH_METHOD_AWS_SIGV4
            - MCP_SERVER_AUTH_METHOD_BASIC_AUTH
          type: string
          x-speakeasy-unknown-values: allow
        defaultAuthorizeUrl:
          deprecated: true
          description: >-
            Deprecated: read the OAUTH2 entry's authorize_url from auth_modes
            instead.
          type: string
        defaultScopes:
          deprecated: true
          description: 'Deprecated: read the OAUTH2 entry''s scopes from auth_modes instead.'
          items:
            type: string
          type:
            - array
            - 'null'
        defaultTokenUrl:
          deprecated: true
          description: >-
            Deprecated: read the OAUTH2 entry's token_url from auth_modes
            instead.
          type: string
        description:
          description: Short description of what the MCP server does.
          type: string
        displayName:
          description: Human-readable display name.
          type: string
        iconUrl:
          description: Icon URL (e.g. "/static/app-icons/datadog.svg").
          type: string
        id:
          description: Opaque catalog entry identifier (27-character KSUID).
          type: string
        maturity:
          description: Implementation maturity level.
          enum:
            - MCP_SERVER_CATALOG_MATURITY_UNSPECIFIED
            - MCP_SERVER_CATALOG_MATURITY_STUB
            - MCP_SERVER_CATALOG_MATURITY_GENERATED
            - MCP_SERVER_CATALOG_MATURITY_VERIFIED
            - MCP_SERVER_CATALOG_MATURITY_CURATED
          type: string
          x-speakeasy-unknown-values: allow
        scope:
          description: Implementation scope classification.
          enum:
            - MCP_SERVER_CATALOG_SCOPE_UNSPECIFIED
            - MCP_SERVER_CATALOG_SCOPE_BUSINESS
            - MCP_SERVER_CATALOG_SCOPE_EXCLUDED
            - MCP_SERVER_CATALOG_SCOPE_UNDETERMINED
          type: string
          x-speakeasy-unknown-values: allow
        serviceName:
          description: |-
            mcpgw impl service name (e.g., "datadog", "github"). Stable across
             display-name changes; suitable for grouping entries that share an impl
             and for matching catalog entries to a host app. For tunneled HOSTED
             registrations the appliance must announce a HOSTED port whose Name field
             matches this string — that's how the wormhole DialByName at runtime
             resolves the right port on the appliance.
          type: string
        stable:
          deprecated: true
          description: >-
            Whether this catalog entry is stable (true) or early access
            (false/default).
             Deprecated: use channel instead.
          type: boolean
        supportedOauth2Modes:
          description: >-
            OAuth2 modes supported by this server. When non-empty, the frontend
            shows
             only these modes in the dropdown. When empty, all modes are shown.
          items:
            enum:
              - MCP_SERVER_AUTH_OAUTH2_MODE_UNSPECIFIED
              - MCP_SERVER_AUTH_OAUTH2_MODE_SERVICE
              - MCP_SERVER_AUTH_OAUTH2_MODE_PASSTHROUGH
              - MCP_SERVER_AUTH_OAUTH2_MODE_CLIENT_CREDENTIALS
              - MCP_SERVER_AUTH_OAUTH2_MODE_JWT_BEARER
              - MCP_SERVER_AUTH_OAUTH2_MODE_GOOGLE_SERVICE_ACCOUNT
              - MCP_SERVER_AUTH_OAUTH2_MODE_AUTHORIZATION_CODE
            type: string
            x-speakeasy-unknown-values: allow
          type:
            - array
            - 'null'
      title: Mcp Server Catalog Entry
      type: object
      x-speakeasy-name-override: MCPServerCatalogEntry
    c1.api.ai_governance.v1.MCPServerCatalogAuthMode:
      description: >-
        MCPServerCatalogAuthMode describes a single authentication method an
        impl
         supports. Multiple modes mean the user/admin can pick at registration time
         (e.g., GitHub: bearer PAT or OAuth2). Sourced from the bundle's
         connect.supported_auth_modes via the model-side mirror.
      properties:
        authMethod:
          description: >-
            Authentication method enum. UNSPECIFIED entries are dropped on the
            way out.
          enum:
            - MCP_SERVER_AUTH_METHOD_UNSPECIFIED
            - MCP_SERVER_AUTH_METHOD_NONE
            - MCP_SERVER_AUTH_METHOD_BEARER_TOKEN
            - MCP_SERVER_AUTH_METHOD_OAUTH2
            - MCP_SERVER_AUTH_METHOD_CUSTOM_HEADER
            - MCP_SERVER_AUTH_METHOD_AWS_SIGV4
            - MCP_SERVER_AUTH_METHOD_BASIC_AUTH
          type: string
          x-speakeasy-unknown-values: allow
        authStyle:
          description: |-
            Credential placement on the OAuth2 token request. Allowed values:
             "in_params" (form body), "in_header" (HTTP Basic), or empty
             (autodetect). Set by the impl bundle and shown read-only on the form.
          type: string
        authorizeUrl:
          description: OAuth2 authorization endpoint URL. Empty for non-OAuth2 methods.
          type: string
        credentialUrl:
          description: >-
            Documentation URL where the user can obtain a credential for this
            method
             (e.g., a link to the SaaS app's "create API token" page). Empty if not set.
          type: string
        description:
          description: |-
            Optional admin-facing hint describing the use case this mode targets
             (e.g. "Per user OAuth option").
          type: string
        extraAuthorizeParams:
          additionalProperties:
            type: string
          description: |-
            Static query params the bundle declares for the authorize URL
             (e.g. Notion `owner=user`). authorization_code grant only. Surfaced
             read-only so the form can pre-populate its editable copy.
          type: object
        extraTokenParams:
          additionalProperties:
            type: string
          description: |-
            Extra body params the bundle declares for the OAuth2 token request
             (e.g. Auth0/Wiz `audience`). Surfaced read-only so the registration
             form can pre-populate its editable copy on MCPServerAuthOAuth2.
          type: object
        header:
          description: |-
            Header name for api_key / custom-header methods. Prefills the form's
             header-name field. Empty falls back to the C1 default.
          type: string
        issuerUrl:
          description: >-
            OAuth2 issuer URL (used for OIDC discovery). Empty when not an OIDC
            issuer.
          type: string
        jwtAudience:
          description: JWT-bearer assertion audience when it differs from token_url.
          type: string
        oauth2Grant:
          description: >-
            OAuth2 grant for this mode. Prefills the form's OAuth2 mode
            selection.
             Raw bundle string: "client_credentials", "authorization_code",
             "jwt_bearer", "google_service_account", or empty (infer from authorize_url).
          type: string
        passthrough:
          description: >-
            Per-user OAuth: each user authorizes individually instead of sharing
            a
             service-level credential. Only meaningful for OAuth2.
          type: boolean
        pkce:
          description: >-
            PKCE behavior for authorization_code: "discover" (or empty), "s256",
            or
             "disabled". Set by the impl bundle and shown read-only on the form.
          type: string
        scopes:
          description: >-
            OAuth2 scopes requested by this method. Empty for non-OAuth2
            methods.
          items:
            type: string
          type:
            - array
            - 'null'
        tokenUrl:
          description: OAuth2 token endpoint URL. Empty for non-OAuth2 methods.
          type: string
      title: Mcp Server Catalog Auth Mode
      type: object
      x-speakeasy-name-override: MCPServerCatalogAuthMode
    c1.api.ai_governance.v1.MCPServerCatalogConfigSchema:
      description: >-
        MCPServerCatalogConfigSchema describes extra configuration fields beyond
        auth.
      properties:
        fields:
          description: The fields field.
          items:
            $ref: >-
              #/components/schemas/c1.api.ai_governance.v1.MCPServerCatalogConfigField
          type:
            - array
            - 'null'
      title: Mcp Server Catalog Config Schema
      type: object
      x-speakeasy-name-override: MCPServerCatalogConfigSchema
    c1.api.ai_governance.v1.MCPServerCatalogConfigField:
      description: >-
        MCPServerCatalogConfigField describes a single extra configuration field
        for an MCP server catalog entry.
      properties:
        default:
          description: Default value the registration form prefills. Ignored when secret.
          type: string
        description:
          description: Help text describing the field.
          type: string
        displayName:
          description: Human-readable label for the field.
          type: string
        name:
          description: Machine-readable field name (used as the map key in config_fields).
          type: string
        placeholder:
          description: Placeholder text shown in an empty input.
          type: string
        required:
          description: Whether this field must be provided.
          type: boolean
        secret:
          description: >-
            Whether the field value should be treated as a secret (e.g. masked
            in UI).
          type: boolean
      title: Mcp Server Catalog Config Field
      type: object
      x-speakeasy-name-override: MCPServerCatalogConfigField
  securitySchemes:
    bearerAuth:
      scheme: bearer
      type: http
    oauth:
      description: >-
        This API uses OAuth2 with the Client Credential flow.

        Client Credentials must be sent in the BODY, not the headers.

        For an example of how to implement this, refer to the
        [c1TokenSource.Token()](https://github.com/ConductorOne/conductorone-sdk-go/blob/3375fe7c0126d17e7ec4e711693dee7b791023aa/token_source.go#L101-L187)
        function.
      flows:
        clientCredentials:
          scopes: {}
          tokenUrl: /auth/v1/token
      type: oauth2

````