naftiko: 1.0.0-alpha2 info: label: Red Hat OpenShift Cluster Manager API — Clusters description: 'Red Hat OpenShift Cluster Manager API — Clusters. 5 operations. Lead operation: List Clusters. Self-contained Naftiko capability covering one Red Hat Openshift business surface.' tags: - Red Hat Openshift - Clusters created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: RED_HAT_OPENSHIFT_API_KEY: RED_HAT_OPENSHIFT_API_KEY capability: consumes: - type: http namespace: cluster-manager-clusters baseUri: https://api.openshift.com description: Red Hat OpenShift Cluster Manager API — Clusters business capability. Self-contained, no shared references. resources: - name: api-clusters_mgmt-v1-clusters path: /api/clusters_mgmt/v1/clusters operations: - name: listclusters method: GET description: List Clusters outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: page in: query type: integer description: Page number for pagination (1-indexed) - name: size in: query type: integer description: Number of results per page - name: search in: query type: string description: SQL-like search expression for filtering - name: order in: query type: string description: SQL-like ORDER BY clause - name: createcluster method: POST description: Create Cluster outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-clusters_mgmt-v1-clusters-cluster_id path: /api/clusters_mgmt/v1/clusters/{cluster_id} operations: - name: getcluster method: GET description: Get Cluster outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatecluster method: PATCH description: Update Cluster outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletecluster method: DELETE description: Delete Cluster outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.RED_HAT_OPENSHIFT_API_KEY}}' exposes: - type: rest namespace: cluster-manager-clusters-rest port: 8080 description: REST adapter for Red Hat OpenShift Cluster Manager API — Clusters. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/clusters-mgmt/v1/clusters name: api-clusters-mgmt-v1-clusters description: REST surface for api-clusters_mgmt-v1-clusters. operations: - method: GET name: listclusters description: List Clusters call: cluster-manager-clusters.listclusters with: page: rest.page size: rest.size search: rest.search order: rest.order outputParameters: - type: object mapping: $. - method: POST name: createcluster description: Create Cluster call: cluster-manager-clusters.createcluster with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/clusters-mgmt/v1/clusters/{cluster-id} name: api-clusters-mgmt-v1-clusters-cluster-id description: REST surface for api-clusters_mgmt-v1-clusters-cluster_id. operations: - method: GET name: getcluster description: Get Cluster call: cluster-manager-clusters.getcluster outputParameters: - type: object mapping: $. - method: PATCH name: updatecluster description: Update Cluster call: cluster-manager-clusters.updatecluster with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletecluster description: Delete Cluster call: cluster-manager-clusters.deletecluster outputParameters: - type: object mapping: $. - type: mcp namespace: cluster-manager-clusters-mcp port: 9090 transport: http description: MCP adapter for Red Hat OpenShift Cluster Manager API — Clusters. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-clusters description: List Clusters hints: readOnly: true destructive: false idempotent: true call: cluster-manager-clusters.listclusters with: page: tools.page size: tools.size search: tools.search order: tools.order outputParameters: - type: object mapping: $. - name: create-cluster description: Create Cluster hints: readOnly: false destructive: false idempotent: false call: cluster-manager-clusters.createcluster with: body: tools.body outputParameters: - type: object mapping: $. - name: get-cluster description: Get Cluster hints: readOnly: true destructive: false idempotent: true call: cluster-manager-clusters.getcluster outputParameters: - type: object mapping: $. - name: update-cluster description: Update Cluster hints: readOnly: false destructive: false idempotent: true call: cluster-manager-clusters.updatecluster with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-cluster description: Delete Cluster hints: readOnly: false destructive: true idempotent: true call: cluster-manager-clusters.deletecluster outputParameters: - type: object mapping: $.