GridGain · Capability

GridGain REST module — recovery

GridGain REST module — recovery. 9 operations. Lead operation: recovery. Self-contained Naftiko capability covering one Gridgain business surface.

Run with Naftiko Gridgainrecovery

What You Can Do

POST
Migrate — Migrates nodes from old cluster to new (repaired) cluster.
/v1/management/v1/recovery/cluster/migrate
POST
Resetcluster — Initiates cluster reset to repair CMG/Metastorage group/both.
/v1/management/v1/recovery/cluster/reset
POST
Recovertables — Start a recovery process for tables.
/v1/management/v1/recovery/tables
GET
Gettablesrecoverystate — Get a state of recovery process for tables.
/v1/management/v1/recovery/tables/state/{operationid}
POST
Resetzonepartitions — Updates assignments of zone's partitions in a forced manner, allowing for the recovery of raft groups with lost majorities.
/v1/management/v1/recovery/zone/partitions/reset
POST
Restartzonepartitions — Restarts replica service and raft group of passed zone partitions.
/v1/management/v1/recovery/zone/partitions/restart
POST
Restartzonepartitionswithcleanup — Restarts replica service and raft group of passed zone partitions with cleaning up of the storage.
/v1/management/v1/recovery/zone/partitions/restartwithcleanup
GET
Getzoneglobalpartitionstates — Returns global zone partition states.
/v1/management/v1/recovery/zone/state/global
GET
Getzonelocalpartitionstates — Returns local zone partition states.
/v1/management/v1/recovery/zone/state/local

MCP Tools

migrates-nodes-old-cluster-new

Migrates nodes from old cluster to new (repaired) cluster.

initiates-cluster-reset-repair-cmg

Initiates cluster reset to repair CMG/Metastorage group/both.

start-recovery-process-tables

Start a recovery process for tables.

get-state-recovery-process-tables

Get a state of recovery process for tables.

read-only idempotent
updates-assignments-zone-s-partitions-forced

Updates assignments of zone's partitions in a forced manner, allowing for the recovery of raft groups with lost majorities.

restarts-replica-service-and-raft

Restarts replica service and raft group of passed zone partitions.

restarts-replica-service-and-raft-2

Restarts replica service and raft group of passed zone partitions with cleaning up of the storage.

returns-global-zone-partition-states

Returns global zone partition states.

read-only idempotent
returns-local-zone-partition-states

Returns local zone partition states.

read-only idempotent

Capability Spec

gridgain-recovery.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GridGain REST module — recovery
  description: 'GridGain REST module — recovery. 9 operations. Lead operation: recovery. Self-contained Naftiko capability
    covering one Gridgain business surface.'
  tags:
  - Gridgain
  - recovery
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GRIDGAIN_API_KEY: GRIDGAIN_API_KEY
capability:
  consumes:
  - type: http
    namespace: gridgain-recovery
    baseUri: http://localhost:10300
    description: GridGain REST module — recovery business capability. Self-contained, no shared references.
    resources:
    - name: management-v1-recovery-cluster-migrate
      path: /management/v1/recovery/cluster/migrate
      operations:
      - name: migrate
        method: POST
        description: Migrates nodes from old cluster to new (repaired) cluster.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-cluster-reset
      path: /management/v1/recovery/cluster/reset
      operations:
      - name: resetcluster
        method: POST
        description: Initiates cluster reset to repair CMG/Metastorage group/both.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-tables
      path: /management/v1/recovery/tables
      operations:
      - name: recovertables
        method: POST
        description: Start a recovery process for tables.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-tables-state-operationId
      path: /management/v1/recovery/tables/state/{operationId}
      operations:
      - name: gettablesrecoverystate
        method: GET
        description: Get a state of recovery process for tables.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: operationId
          in: path
          type: string
          description: Operation ID.
          required: true
    - name: management-v1-recovery-zone-partitions-reset
      path: /management/v1/recovery/zone/partitions/reset
      operations:
      - name: resetzonepartitions
        method: POST
        description: Updates assignments of zone's partitions in a forced manner, allowing for the recovery of raft groups
          with lost majorities.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-zone-partitions-restart
      path: /management/v1/recovery/zone/partitions/restart
      operations:
      - name: restartzonepartitions
        method: POST
        description: Restarts replica service and raft group of passed zone partitions.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-zone-partitions-restartWithCleanup
      path: /management/v1/recovery/zone/partitions/restartWithCleanup
      operations:
      - name: restartzonepartitionswithcleanup
        method: POST
        description: Restarts replica service and raft group of passed zone partitions with cleaning up of the storage.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: management-v1-recovery-zone-state-global
      path: /management/v1/recovery/zone/state/global
      operations:
      - name: getzoneglobalpartitionstates
        method: GET
        description: Returns global zone partition states.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: zoneNames
          in: query
          type: array
        - name: partitionIds
          in: query
          type: array
    - name: management-v1-recovery-zone-state-local
      path: /management/v1/recovery/zone/state/local
      operations:
      - name: getzonelocalpartitionstates
        method: GET
        description: Returns local zone partition states.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: zoneNames
          in: query
          type: array
        - name: nodeNames
          in: query
          type: array
        - name: partitionIds
          in: query
          type: array
    authentication:
      type: bearer
      token: '{{env.GRIDGAIN_API_KEY}}'
  exposes:
  - type: rest
    namespace: gridgain-recovery-rest
    port: 8080
    description: REST adapter for GridGain REST module — recovery. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/management/v1/recovery/cluster/migrate
      name: management-v1-recovery-cluster-migrate
      description: REST surface for management-v1-recovery-cluster-migrate.
      operations:
      - method: POST
        name: migrate
        description: Migrates nodes from old cluster to new (repaired) cluster.
        call: gridgain-recovery.migrate
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/cluster/reset
      name: management-v1-recovery-cluster-reset
      description: REST surface for management-v1-recovery-cluster-reset.
      operations:
      - method: POST
        name: resetcluster
        description: Initiates cluster reset to repair CMG/Metastorage group/both.
        call: gridgain-recovery.resetcluster
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/tables
      name: management-v1-recovery-tables
      description: REST surface for management-v1-recovery-tables.
      operations:
      - method: POST
        name: recovertables
        description: Start a recovery process for tables.
        call: gridgain-recovery.recovertables
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/tables/state/{operationid}
      name: management-v1-recovery-tables-state-operationid
      description: REST surface for management-v1-recovery-tables-state-operationId.
      operations:
      - method: GET
        name: gettablesrecoverystate
        description: Get a state of recovery process for tables.
        call: gridgain-recovery.gettablesrecoverystate
        with:
          operationId: rest.operationId
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/zone/partitions/reset
      name: management-v1-recovery-zone-partitions-reset
      description: REST surface for management-v1-recovery-zone-partitions-reset.
      operations:
      - method: POST
        name: resetzonepartitions
        description: Updates assignments of zone's partitions in a forced manner, allowing for the recovery of raft groups
          with lost majorities.
        call: gridgain-recovery.resetzonepartitions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/zone/partitions/restart
      name: management-v1-recovery-zone-partitions-restart
      description: REST surface for management-v1-recovery-zone-partitions-restart.
      operations:
      - method: POST
        name: restartzonepartitions
        description: Restarts replica service and raft group of passed zone partitions.
        call: gridgain-recovery.restartzonepartitions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/zone/partitions/restartwithcleanup
      name: management-v1-recovery-zone-partitions-restartwithcleanup
      description: REST surface for management-v1-recovery-zone-partitions-restartWithCleanup.
      operations:
      - method: POST
        name: restartzonepartitionswithcleanup
        description: Restarts replica service and raft group of passed zone partitions with cleaning up of the storage.
        call: gridgain-recovery.restartzonepartitionswithcleanup
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/zone/state/global
      name: management-v1-recovery-zone-state-global
      description: REST surface for management-v1-recovery-zone-state-global.
      operations:
      - method: GET
        name: getzoneglobalpartitionstates
        description: Returns global zone partition states.
        call: gridgain-recovery.getzoneglobalpartitionstates
        with:
          zoneNames: rest.zoneNames
          partitionIds: rest.partitionIds
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/management/v1/recovery/zone/state/local
      name: management-v1-recovery-zone-state-local
      description: REST surface for management-v1-recovery-zone-state-local.
      operations:
      - method: GET
        name: getzonelocalpartitionstates
        description: Returns local zone partition states.
        call: gridgain-recovery.getzonelocalpartitionstates
        with:
          zoneNames: rest.zoneNames
          nodeNames: rest.nodeNames
          partitionIds: rest.partitionIds
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: gridgain-recovery-mcp
    port: 9090
    transport: http
    description: MCP adapter for GridGain REST module — recovery. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: migrates-nodes-old-cluster-new
      description: Migrates nodes from old cluster to new (repaired) cluster.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.migrate
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: initiates-cluster-reset-repair-cmg
      description: Initiates cluster reset to repair CMG/Metastorage group/both.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.resetcluster
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: start-recovery-process-tables
      description: Start a recovery process for tables.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.recovertables
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-state-recovery-process-tables
      description: Get a state of recovery process for tables.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gridgain-recovery.gettablesrecoverystate
      with:
        operationId: tools.operationId
      outputParameters:
      - type: object
        mapping: $.
    - name: updates-assignments-zone-s-partitions-forced
      description: Updates assignments of zone's partitions in a forced manner, allowing for the recovery of raft groups with
        lost majorities.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.resetzonepartitions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: restarts-replica-service-and-raft
      description: Restarts replica service and raft group of passed zone partitions.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.restartzonepartitions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: restarts-replica-service-and-raft-2
      description: Restarts replica service and raft group of passed zone partitions with cleaning up of the storage.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: gridgain-recovery.restartzonepartitionswithcleanup
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-global-zone-partition-states
      description: Returns global zone partition states.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gridgain-recovery.getzoneglobalpartitionstates
      with:
        zoneNames: tools.zoneNames
        partitionIds: tools.partitionIds
      outputParameters:
      - type: object
        mapping: $.
    - name: returns-local-zone-partition-states
      description: Returns local zone partition states.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: gridgain-recovery.getzonelocalpartitionstates
      with:
        zoneNames: tools.zoneNames
        nodeNames: tools.nodeNames
        partitionIds: tools.partitionIds
      outputParameters:
      - type: object
        mapping: $.