IBM WebSphere · Capability

WebSphere Liberty Collective Controller REST API — Clusters

WebSphere Liberty Collective Controller REST API — Clusters. 9 operations. Lead operation: List Clusters. Self-contained Naftiko capability covering one Websphere business surface.

Run with Naftiko WebsphereClusters

What You Can Do

GET
Listclusters — List Clusters
/v1/clusters
POST
Createcluster — Create a Cluster
/v1/clusters
GET
Getcluster — Get Cluster Details
/v1/clusters/{clustername}
DELETE
Deletecluster — Delete a Cluster
/v1/clusters/{clustername}
GET
Listclustermembers — List Cluster Members
/v1/clusters/{clustername}/members
POST
Addclustermember — Add a Member to a Cluster
/v1/clusters/{clustername}/members
DELETE
Removeclustermember — Remove a Member From a Cluster
/v1/clusters/{clustername}/members/{membername}
POST
Startcluster — Start All Cluster Members
/v1/clusters/{clustername}/start
POST
Stopcluster — Stop All Cluster Members
/v1/clusters/{clustername}/stop

MCP Tools

list-clusters

List Clusters

read-only idempotent
create-cluster

Create a Cluster

get-cluster-details

Get Cluster Details

read-only idempotent
delete-cluster

Delete a Cluster

idempotent
list-cluster-members

List Cluster Members

read-only idempotent
add-member-cluster

Add a Member to a Cluster

remove-member-cluster

Remove a Member From a Cluster

idempotent
start-all-cluster-members

Start All Cluster Members

stop-all-cluster-members

Stop All Cluster Members

Capability Spec

liberty-collective-controller-rest-clusters.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: WebSphere Liberty Collective Controller REST API — Clusters
  description: 'WebSphere Liberty Collective Controller REST API — Clusters. 9 operations. Lead operation: List Clusters.
    Self-contained Naftiko capability covering one Websphere business surface.'
  tags:
  - Websphere
  - Clusters
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    WEBSPHERE_API_KEY: WEBSPHERE_API_KEY
capability:
  consumes:
  - type: http
    namespace: liberty-collective-controller-rest-clusters
    baseUri: https://localhost:9443/ibm/api/collective
    description: WebSphere Liberty Collective Controller REST API — Clusters business capability. Self-contained, no shared
      references.
    resources:
    - name: clusters
      path: /clusters
      operations:
      - name: listclusters
        method: GET
        description: List Clusters
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createcluster
        method: POST
        description: Create a Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: clusters-clusterName
      path: /clusters/{clusterName}
      operations:
      - name: getcluster
        method: GET
        description: Get Cluster Details
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: deletecluster
        method: DELETE
        description: Delete a Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: clusters-clusterName-members
      path: /clusters/{clusterName}/members
      operations:
      - name: listclustermembers
        method: GET
        description: List Cluster Members
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: addclustermember
        method: POST
        description: Add a Member to a Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: clusters-clusterName-members-memberName
      path: /clusters/{clusterName}/members/{memberName}
      operations:
      - name: removeclustermember
        method: DELETE
        description: Remove a Member From a Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: clusters-clusterName-start
      path: /clusters/{clusterName}/start
      operations:
      - name: startcluster
        method: POST
        description: Start All Cluster Members
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: clusters-clusterName-stop
      path: /clusters/{clusterName}/stop
      operations:
      - name: stopcluster
        method: POST
        description: Stop All Cluster Members
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: basic
      username: '{{env.WEBSPHERE_USER}}'
      password: '{{env.WEBSPHERE_PASS}}'
  exposes:
  - type: rest
    namespace: liberty-collective-controller-rest-clusters-rest
    port: 8080
    description: REST adapter for WebSphere Liberty Collective Controller REST API — Clusters. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/clusters
      name: clusters
      description: REST surface for clusters.
      operations:
      - method: GET
        name: listclusters
        description: List Clusters
        call: liberty-collective-controller-rest-clusters.listclusters
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcluster
        description: Create a Cluster
        call: liberty-collective-controller-rest-clusters.createcluster
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clustername}
      name: clusters-clustername
      description: REST surface for clusters-clusterName.
      operations:
      - method: GET
        name: getcluster
        description: Get Cluster Details
        call: liberty-collective-controller-rest-clusters.getcluster
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecluster
        description: Delete a Cluster
        call: liberty-collective-controller-rest-clusters.deletecluster
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clustername}/members
      name: clusters-clustername-members
      description: REST surface for clusters-clusterName-members.
      operations:
      - method: GET
        name: listclustermembers
        description: List Cluster Members
        call: liberty-collective-controller-rest-clusters.listclustermembers
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: addclustermember
        description: Add a Member to a Cluster
        call: liberty-collective-controller-rest-clusters.addclustermember
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clustername}/members/{membername}
      name: clusters-clustername-members-membername
      description: REST surface for clusters-clusterName-members-memberName.
      operations:
      - method: DELETE
        name: removeclustermember
        description: Remove a Member From a Cluster
        call: liberty-collective-controller-rest-clusters.removeclustermember
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clustername}/start
      name: clusters-clustername-start
      description: REST surface for clusters-clusterName-start.
      operations:
      - method: POST
        name: startcluster
        description: Start All Cluster Members
        call: liberty-collective-controller-rest-clusters.startcluster
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clustername}/stop
      name: clusters-clustername-stop
      description: REST surface for clusters-clusterName-stop.
      operations:
      - method: POST
        name: stopcluster
        description: Stop All Cluster Members
        call: liberty-collective-controller-rest-clusters.stopcluster
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: liberty-collective-controller-rest-clusters-mcp
    port: 9090
    transport: http
    description: MCP adapter for WebSphere Liberty Collective Controller REST 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: liberty-collective-controller-rest-clusters.listclusters
      outputParameters:
      - type: object
        mapping: $.
    - name: create-cluster
      description: Create a Cluster
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: liberty-collective-controller-rest-clusters.createcluster
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-cluster-details
      description: Get Cluster Details
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: liberty-collective-controller-rest-clusters.getcluster
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-cluster
      description: Delete a Cluster
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: liberty-collective-controller-rest-clusters.deletecluster
      outputParameters:
      - type: object
        mapping: $.
    - name: list-cluster-members
      description: List Cluster Members
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: liberty-collective-controller-rest-clusters.listclustermembers
      outputParameters:
      - type: object
        mapping: $.
    - name: add-member-cluster
      description: Add a Member to a Cluster
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: liberty-collective-controller-rest-clusters.addclustermember
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: remove-member-cluster
      description: Remove a Member From a Cluster
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: liberty-collective-controller-rest-clusters.removeclustermember
      outputParameters:
      - type: object
        mapping: $.
    - name: start-all-cluster-members
      description: Start All Cluster Members
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: liberty-collective-controller-rest-clusters.startcluster
      outputParameters:
      - type: object
        mapping: $.
    - name: stop-all-cluster-members
      description: Stop All Cluster Members
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: liberty-collective-controller-rest-clusters.stopcluster
      outputParameters:
      - type: object
        mapping: $.