Apache Helix · Capability

Apache Helix REST API — Clusters

Apache Helix REST API — Clusters. 4 operations. Lead operation: Apache Helix List Clusters. Self-contained Naftiko capability covering one Apache Helix business surface.

Run with Naftiko Apache HelixClusters

What You Can Do

GET
Listclusters — Apache Helix List Clusters
/v1/clusters
POST
Createcluster — Apache Helix Create Cluster
/v1/clusters
GET
Getcluster — Apache Helix Get Cluster
/v1/clusters/{clusterid}
DELETE
Deletecluster — Apache Helix Delete Cluster
/v1/clusters/{clusterid}

MCP Tools

apache-helix-list-clusters

Apache Helix List Clusters

read-only idempotent
apache-helix-create-cluster

Apache Helix Create Cluster

apache-helix-get-cluster

Apache Helix Get Cluster

read-only idempotent
apache-helix-delete-cluster

Apache Helix Delete Cluster

idempotent

Capability Spec

rest-clusters.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Apache Helix REST API — Clusters
  description: 'Apache Helix REST API — Clusters. 4 operations. Lead operation: Apache Helix List Clusters. Self-contained
    Naftiko capability covering one Apache Helix business surface.'
  tags:
  - Apache Helix
  - Clusters
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    APACHE_HELIX_API_KEY: APACHE_HELIX_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-clusters
    baseUri: http://localhost:9100
    description: Apache Helix REST API — Clusters business capability. Self-contained, no shared references.
    resources:
    - name: clusters
      path: /clusters
      operations:
      - name: listclusters
        method: GET
        description: Apache Helix List Clusters
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: createcluster
        method: POST
        description: Apache Helix Create Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: clusters-clusterId
      path: /clusters/{clusterId}
      operations:
      - name: getcluster
        method: GET
        description: Apache Helix Get Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: clusterId
          in: path
          type: string
          description: Cluster name
          required: true
      - name: deletecluster
        method: DELETE
        description: Apache Helix Delete Cluster
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: clusterId
          in: path
          type: string
          required: true
  exposes:
  - type: rest
    namespace: rest-clusters-rest
    port: 8080
    description: REST adapter for Apache Helix 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: Apache Helix List Clusters
        call: rest-clusters.listclusters
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createcluster
        description: Apache Helix Create Cluster
        call: rest-clusters.createcluster
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/clusters/{clusterid}
      name: clusters-clusterid
      description: REST surface for clusters-clusterId.
      operations:
      - method: GET
        name: getcluster
        description: Apache Helix Get Cluster
        call: rest-clusters.getcluster
        with:
          clusterId: rest.clusterId
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletecluster
        description: Apache Helix Delete Cluster
        call: rest-clusters.deletecluster
        with:
          clusterId: rest.clusterId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-clusters-mcp
    port: 9090
    transport: http
    description: MCP adapter for Apache Helix REST API — Clusters. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: apache-helix-list-clusters
      description: Apache Helix List Clusters
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-clusters.listclusters
      outputParameters:
      - type: object
        mapping: $.
    - name: apache-helix-create-cluster
      description: Apache Helix Create Cluster
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-clusters.createcluster
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: apache-helix-get-cluster
      description: Apache Helix Get Cluster
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-clusters.getcluster
      with:
        clusterId: tools.clusterId
      outputParameters:
      - type: object
        mapping: $.
    - name: apache-helix-delete-cluster
      description: Apache Helix Delete Cluster
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: rest-clusters.deletecluster
      with:
        clusterId: tools.clusterId
      outputParameters:
      - type: object
        mapping: $.