Use it when choosing components by category, trait or rendering context; use structured_data_fetch instead for complete datasets, object_registry for full object definitions, or registry_snapshot for mappings together with traits and objects. Returns component names, categories, readiness labels and availableCategories; detail controls added tags, contexts, regions, traits and evidence. includeInternal exposes hidden registry objects. Readiness evidence retains the build it measured and does not certify a new composition. Reference: TOOL-REFERENCE.md#catalog_list; full schema: oods://schemas/catalog_list.input.json.

Inputs

Name Type Required Description
category string no Filter components by category (e.g., 'core', 'lifecycle', 'visual')
trait string no Filter components by trait (e.g., 'Editable', 'Searchable')
context string no Filter components by context (e.g., 'detail', 'list')
status "stable" | "beta" | "planned" no Filter by legacy static-HTML status only: 'stable' = mapped HTML renderer; 'planned' = HTML fallback. Consult productReality.surfaces for React/Vue, generated-consumer and maturity evidence.
detail "brief" | "summary" | "full" no Response detail level. See full schema for details.
page integer no 1-based page index for pagination.
pageSize integer no Number of components per page.
includeInternal boolean no Also list OODS Foundry's internal (non-business) objects in registry.objects, after the business objects. Without it they are left out and registry.hiddenInternal counts them.

Outputs

Name Type Required Description
registry object no Live object and trait names, source and any unused/shadowed definitions.
obligationScope object no Current accepted catalog scope ruling, independent of historical row classification proposals and target capability evidence. Retained obligations are not implementation or maturity claims.
components object | componentEntry[] yes Array of component catalog entries: brief entries by default for an unfiltered call, summary or full entries on request.
totalCount integer yes Total number of components that match the filters (before pagination).
returnedCount integer yes Number of components returned in this page.
page integer yes 1-based page index used for pagination.
pageSize integer yes Page size used for pagination. 0 when there are no results.
hasMore boolean yes Whether more components are available after this page.
detail "brief" | "summary" | "full" yes Detail level applied to component entries.
generatedAt string yes ISO timestamp when catalog was generated
stats object yes
availableCategories string[] yes All available category values that can be used for filtering. Sorted alphabetically.
suggestions object no Suggested filter values when a query returns zero results.

A real call

Recorded by this site's system run, step catalog-page-1, with the published OODS Foundry 0.10.1.

Its input:

{
  "detail": "full",
  "page": 1,
  "pageSize": 50
}

Its result, first lines:

{
  "registry": {
    "source": "live-registry",
    "objects": [
      "Article",
      "Invoice",
      "Media",
      "Organization",
      "Plan",
      "Product",
      "Relationship",
      "Subscription",
      "Transaction",
      "Usage",
      "User"
    ],
    "hiddenInternal": 5,
    "traits": [
      "Addressable",
      "Archivable",
      "Assessable",
      "Auditable",
      "Authable",
      "Billable",
      "Cancellable",
      "Classifiable",
      "Colorized",
      "Communicable",
      "EncodingColor",
      "EncodingOpacity",
      "EncodingPositionX",
      "EncodingPositionY",
      "EncodingShape",
      "EncodingSize",
      "Filterable",
      "Geocodable",
      "InteractionHighlight",
      "InteractionTooltip",
      "Labelled",
      "LayoutConcat",
      "LayoutFacet",
      "LayoutLayer",
      "MarkArea",
      "MarkBar",
      "MarkGraph",
      "MarkLine",
      "MarkPoint",
      "MarkRect",
      "Ownerable",
      "Pageable",
      "Preferenceable",
      "Priceable",
      "Provenanced",
      "SaaSBillingBillable",
      "SaaSBillingMetered",
      "SaaSBillingPayable",
      "SaaSBillingRefundable",
      "ScaleLinear",
      "ScaleTemporal",
      "ScatterPlot",

The whole call, 381 KB of JSON