> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cognigy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# List builtin tools

> Returns the catalog of builtin tools available for the authenticated project.



## OpenAPI

````yaml https://api-trial.cognigy.ai/swagger/openapi.json get /builtin-tools
openapi: 3.0.3
info:
  contact:
    email: support@example.com
    name: API Support
  description: API for managing agents and related resources
  license:
    name: Apache 2.0
    url: http://www.apache.org/licenses/LICENSE-2.0.html
  termsOfService: http://swagger.io/terms/
  title: Agents API
  version: '1.0'
servers:
  - url: https://api-trial.cognigy.ai/v1
security:
  - ApiKey: []
tags:
  - name: Agents
  - name: Brand personas
  - name: Tools
  - name: Built-in tools
  - name: Skills
  - name: Built-in skills
  - name: MCP servers
  - name: Tool references
paths:
  /builtin-tools:
    get:
      tags:
        - Built-in tools
      summary: List builtin tools
      description: >-
        Returns the catalog of builtin tools available for the authenticated
        project.
      parameters:
        - description: >-
            The unique identifier for the project. It is reserved for future
            entitlement filtering.
          in: query
          name: projectId
          schema:
            type: string
      responses:
        '200':
          content:
            application/json:
              schema:
                items:
                  $ref: >-
                    #/components/schemas/internal_builtinresources.BuiltinToolItem
                type: array
          description: OK
        '400':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailBadRequest
          description: Invalid projectId format
        '403':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailForbidden
          description: Access denied
        '500':
          content:
            application/json:
              schema:
                $ref: >-
                  #/components/schemas/github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailInternalError
          description: Internal server error
components:
  schemas:
    internal_builtinresources.BuiltinToolItem:
      properties:
        available:
          description: |-
            Available reports whether the tool is currently published by the
            builtin resources service. False when the slug hasn't been seen
            in the most recent refresh windows — the UI should grey it out
            and disable instantiation. Existing tool instances continue to
            work regardless of this flag (the runtime does not re-read the
            catalog).
          example: true
          type: boolean
        defaultParameters:
          items:
            $ref: >-
              #/components/schemas/internal_builtinresources.BuiltinToolParameterItem
          type: array
        description:
          example: What this tool does, in one line
          type: string
        imageUrl:
          example: https://example.com/icon.png
          type: string
        name:
          example: My Tool
          type: string
        slug:
          example: my-tool-slug
          type: string
      type: object
    github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailBadRequest:
      properties:
        detail:
          example: request body validation failed
          type: string
        errors:
          items:
            $ref: >-
              #/components/schemas/github_com_cognigy_ai-agents-v2_internal_middleware.FieldError
          type: array
        instance:
          example: /v1/{resource}
          type: string
        status:
          example: 400
          type: integer
        title:
          example: Bad Request
          type: string
        traceId:
          example: api--a4d2f126-bec4-4544-a049-7c0cf08524ed
          type: string
        type:
          example: about:blank
          type: string
      type: object
    github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailForbidden:
      properties:
        detail:
          example: 'access denied: insufficient permissions'
          type: string
        instance:
          example: /v1/{resource}/{id}
          type: string
        status:
          example: 403
          type: integer
        title:
          example: Forbidden
          type: string
        traceId:
          example: api--a4d2f126-bec4-4544-a049-7c0cf08524ed
          type: string
        type:
          example: about:blank
          type: string
      type: object
    github_com_cognigy_ai-agents-v2_internal_middleware.ProblemDetailInternalError:
      properties:
        detail:
          example: internal server error
          type: string
        instance:
          example: /v1/{resource}
          type: string
        status:
          example: 500
          type: integer
        title:
          example: Internal Server Error
          type: string
        traceId:
          example: api--a4d2f126-bec4-4544-a049-7c0cf08524ed
          type: string
        type:
          example: about:blank
          type: string
      type: object
    internal_builtinresources.BuiltinToolParameterItem:
      properties:
        connectionTypes:
          description: >-
            ConnectionTypes is the allow-list of connection schema type slugs

            accepted by this parameter when type == "connection". Used by the

            frontend to filter the connection-picker when a customer
            instantiates

            the tool. Omitted from the response when empty or not applicable.
          example:
            - http_basic
            - http_oauth2
          items:
            type: string
          type: array
        description:
          example: What this parameter is used for
          type: string
        key:
          example: paramKey
          type: string
        mode:
          example: aiFilled
          type: string
        modeLocked:
          description: |-
            ModeLocked marks Mode as a design-time decision an instance may not
            override; a create/update that changes it is rejected.
          example: false
          type: boolean
        name:
          example: paramKey
          type: string
        params:
          additionalProperties: {}
          description: >-
            Params carries widget-specific configuration. The only key
            interpreted

            today is "options" for the "select" widget: a list of {label, value}

            objects the UI renders as the dropdown's choices.
          type: object
        type:
          description: >-
            Type is DERIVED from Widget (tools.WidgetToDataType), not stored: it
            is

            the data type a tool instance's parameter of this key must carry. It
            is

            echoed here purely so a client building a POST /v1/tools payload
            does not

            have to reimplement the widget→data-type map. Because it is computed
            at

            response time, Type and Widget cannot drift.
          example: string
          type: string
        value: {}
        widget:
          description: >-
            Widget is the UI control this parameter renders as, and the
            catalog's

            authoritative declaration. Render from this, not from Type.
          example: text
          type: string
      type: object
    github_com_cognigy_ai-agents-v2_internal_middleware.FieldError:
      properties:
        field:
          type: string
        message:
          type: string
      type: object
  securitySchemes:
    ApiKey:
      description: '[Production] API key for production authentication'
      in: header
      name: X-API-Key
      type: apiKey

````