GrowthBook · Capability

GrowthBook REST API — feature-revisions-v2

GrowthBook REST API — feature-revisions-v2. 24 operations. Lead operation: List revisions for a feature. Self-contained Naftiko capability covering one Growthbook business surface.

Run with Naftiko Growthbookfeature-revisions-v2

What You Can Do

GET
Getfeaturerevisionsv2 — List revisions for a feature
/v1/v2/features/{id}/revisions
POST
Postfeaturerevisionv2 — Create a draft revision
/v1/v2/features/{id}/revisions
GET
Getfeaturerevisionlatestv2 — Get the most recent active draft revision
/v1/v2/features/{id}/revisions/latest
GET
Getfeaturerevisionv2 — Get a single feature revision
/v1/v2/features/{id}/revisions/{version}
PUT
Putfeaturerevisionarchivev2 — Set archived state in a draft revision
/v1/v2/features/{id}/revisions/{version}/archive
PUT
Putfeaturerevisiondefaultvaluev2 — Set the default value in a draft revision
/v1/v2/features/{id}/revisions/{version}/default-value
POST
Postfeaturerevisiondiscardv2 — Discard a draft revision
/v1/v2/features/{id}/revisions/{version}/discard
PUT
Putfeaturerevisionholdoutv2 — Set holdout in a draft revision
/v1/v2/features/{id}/revisions/{version}/holdout
GET
Getfeaturerevisionmergestatusv2 — Get merge status for a draft revision
/v1/v2/features/{id}/revisions/{version}/merge-status
PUT
Putfeaturerevisionmetadatav2 — Update revision metadata
/v1/v2/features/{id}/revisions/{version}/metadata
PUT
Putfeaturerevisionprerequisitesv2 — Set feature-level prerequisites in a draft revision
/v1/v2/features/{id}/revisions/{version}/prerequisites
POST
Postfeaturerevisionpublishv2 — Publish a draft revision
/v1/v2/features/{id}/revisions/{version}/publish
POST
Postfeaturerevisionrebasev2 — Rebase a draft revision onto the current live version
/v1/v2/features/{id}/revisions/{version}/rebase
POST
Postfeaturerevisionrequestreviewv2 — Request review for a draft revision
/v1/v2/features/{id}/revisions/{version}/request-review
POST
Postfeaturerevisionrevertv2 — Revert the feature to a prior revision
/v1/v2/features/{id}/revisions/{version}/revert
POST
Postfeaturerevisionruleaddv2 — Add a rule to a draft revision
/v1/v2/features/{id}/revisions/{version}/rules
POST
Postfeaturerevisionrulesreorderv2 — Reorder rules in the revision
/v1/v2/features/{id}/revisions/{version}/rules/reorder
PUT
Putfeaturerevisionrulev2 — Update a rule in a draft revision
/v1/v2/features/{id}/revisions/{version}/rules/{ruleid}
DELETE
Deletefeaturerevisionrulev2 — Delete a rule from a draft revision
/v1/v2/features/{id}/revisions/{version}/rules/{ruleid}
PUT
Putfeaturerevisionrulerampschedulev2 — Set ramp schedule for a rule
/v1/v2/features/{id}/revisions/{version}/rules/{ruleid}/ramp-schedule
DELETE
Deletefeaturerevisionrulerampschedulev2 — Remove ramp schedule from a rule
/v1/v2/features/{id}/revisions/{version}/rules/{ruleid}/ramp-schedule
POST
Postfeaturerevisionsubmitreviewv2 — Submit a review on a draft revision
/v1/v2/features/{id}/revisions/{version}/submit-review
POST
Postfeaturerevisiontogglev2 — Toggle an environment on/off in a draft revision
/v1/v2/features/{id}/revisions/{version}/toggle
GET
Listrevisionsv2 — List feature revisions
/v1/v2/revisions

MCP Tools

list-revisions-feature

List revisions for a feature

read-only idempotent
create-draft-revision

Create a draft revision

get-most-recent-active-draft

Get the most recent active draft revision

read-only idempotent
get-single-feature-revision

Get a single feature revision

read-only idempotent
set-archived-state-draft-revision

Set archived state in a draft revision

idempotent
set-default-value-draft-revision

Set the default value in a draft revision

idempotent
discard-draft-revision

Discard a draft revision

set-holdout-draft-revision

Set holdout in a draft revision

idempotent
get-merge-status-draft-revision

Get merge status for a draft revision

read-only idempotent
update-revision-metadata

Update revision metadata

idempotent
set-feature-level-prerequisites-draft

Set feature-level prerequisites in a draft revision

idempotent
publish-draft-revision

Publish a draft revision

rebase-draft-revision-onto-current

Rebase a draft revision onto the current live version

request-review-draft-revision

Request review for a draft revision

revert-feature-prior-revision

Revert the feature to a prior revision

add-rule-draft-revision

Add a rule to a draft revision

reorder-rules-revision

Reorder rules in the revision

update-rule-draft-revision

Update a rule in a draft revision

idempotent
delete-rule-draft-revision

Delete a rule from a draft revision

idempotent
set-ramp-schedule-rule

Set ramp schedule for a rule

idempotent
remove-ramp-schedule-rule

Remove ramp schedule from a rule

idempotent
submit-review-draft-revision

Submit a review on a draft revision

toggle-environment-off-draft-revision

Toggle an environment on/off in a draft revision

list-feature-revisions

List feature revisions

read-only idempotent

Capability Spec

growthbook-feature-revisions-v2.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: GrowthBook REST API — feature-revisions-v2
  description: 'GrowthBook REST API — feature-revisions-v2. 24 operations. Lead operation: List revisions for a feature. Self-contained
    Naftiko capability covering one Growthbook business surface.'
  tags:
  - Growthbook
  - feature-revisions-v2
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    GROWTHBOOK_API_KEY: GROWTHBOOK_API_KEY
capability:
  consumes:
  - type: http
    namespace: growthbook-feature-revisions-v2
    baseUri: https://api.growthbook.io/api
    description: GrowthBook REST API — feature-revisions-v2 business capability. Self-contained, no shared references.
    resources:
    - name: v2-features-id-revisions
      path: /v2/features/{id}/revisions
      operations:
      - name: getfeaturerevisionsv2
        method: GET
        description: List revisions for a feature
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: postfeaturerevisionv2
        method: POST
        description: Create a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-latest
      path: /v2/features/{id}/revisions/latest
      operations:
      - name: getfeaturerevisionlatestv2
        method: GET
        description: Get the most recent active draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: mine
          in: query
          type: string
          description: If true, return only the most recent active draft authored by or contributed to by the calling user.
    - name: v2-features-id-revisions-version
      path: /v2/features/{id}/revisions/{version}
      operations:
      - name: getfeaturerevisionv2
        method: GET
        description: Get a single feature revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: v2-features-id-revisions-version-archive
      path: /v2/features/{id}/revisions/{version}/archive
      operations:
      - name: putfeaturerevisionarchivev2
        method: PUT
        description: Set archived state in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-default-value
      path: /v2/features/{id}/revisions/{version}/default-value
      operations:
      - name: putfeaturerevisiondefaultvaluev2
        method: PUT
        description: Set the default value in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-discard
      path: /v2/features/{id}/revisions/{version}/discard
      operations:
      - name: postfeaturerevisiondiscardv2
        method: POST
        description: Discard a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-holdout
      path: /v2/features/{id}/revisions/{version}/holdout
      operations:
      - name: putfeaturerevisionholdoutv2
        method: PUT
        description: Set holdout in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-merge-status
      path: /v2/features/{id}/revisions/{version}/merge-status
      operations:
      - name: getfeaturerevisionmergestatusv2
        method: GET
        description: Get merge status for a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
    - name: v2-features-id-revisions-version-metadata
      path: /v2/features/{id}/revisions/{version}/metadata
      operations:
      - name: putfeaturerevisionmetadatav2
        method: PUT
        description: Update revision metadata
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-prerequisites
      path: /v2/features/{id}/revisions/{version}/prerequisites
      operations:
      - name: putfeaturerevisionprerequisitesv2
        method: PUT
        description: Set feature-level prerequisites in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-publish
      path: /v2/features/{id}/revisions/{version}/publish
      operations:
      - name: postfeaturerevisionpublishv2
        method: POST
        description: Publish a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-rebase
      path: /v2/features/{id}/revisions/{version}/rebase
      operations:
      - name: postfeaturerevisionrebasev2
        method: POST
        description: Rebase a draft revision onto the current live version
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-request-review
      path: /v2/features/{id}/revisions/{version}/request-review
      operations:
      - name: postfeaturerevisionrequestreviewv2
        method: POST
        description: Request review for a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-revert
      path: /v2/features/{id}/revisions/{version}/revert
      operations:
      - name: postfeaturerevisionrevertv2
        method: POST
        description: Revert the feature to a prior revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-rules
      path: /v2/features/{id}/revisions/{version}/rules
      operations:
      - name: postfeaturerevisionruleaddv2
        method: POST
        description: Add a rule to a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-rules-reorder
      path: /v2/features/{id}/revisions/{version}/rules/reorder
      operations:
      - name: postfeaturerevisionrulesreorderv2
        method: POST
        description: Reorder rules in the revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-rules-ruleId
      path: /v2/features/{id}/revisions/{version}/rules/{ruleId}
      operations:
      - name: putfeaturerevisionrulev2
        method: PUT
        description: Update a rule in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletefeaturerevisionrulev2
        method: DELETE
        description: Delete a rule from a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-rules-ruleId-ramp-schedule
      path: /v2/features/{id}/revisions/{version}/rules/{ruleId}/ramp-schedule
      operations:
      - name: putfeaturerevisionrulerampschedulev2
        method: PUT
        description: Set ramp schedule for a rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletefeaturerevisionrulerampschedulev2
        method: DELETE
        description: Remove ramp schedule from a rule
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-submit-review
      path: /v2/features/{id}/revisions/{version}/submit-review
      operations:
      - name: postfeaturerevisionsubmitreviewv2
        method: POST
        description: Submit a review on a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-features-id-revisions-version-toggle
      path: /v2/features/{id}/revisions/{version}/toggle
      operations:
      - name: postfeaturerevisiontogglev2
        method: POST
        description: Toggle an environment on/off in a draft revision
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: id
          in: path
          type: string
          required: true
        - name: version
          in: path
          type: string
          required: true
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: v2-revisions
      path: /v2/revisions
      operations:
      - name: listrevisionsv2
        method: GET
        description: List feature revisions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: mine
          in: query
          type: string
          description: If true, return only revisions authored by or contributed to by the calling user.
    authentication:
      type: bearer
      token: '{{env.GROWTHBOOK_API_KEY}}'
  exposes:
  - type: rest
    namespace: growthbook-feature-revisions-v2-rest
    port: 8080
    description: REST adapter for GrowthBook REST API — feature-revisions-v2. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/v2/features/{id}/revisions
      name: v2-features-id-revisions
      description: REST surface for v2-features-id-revisions.
      operations:
      - method: GET
        name: getfeaturerevisionsv2
        description: List revisions for a feature
        call: growthbook-feature-revisions-v2.getfeaturerevisionsv2
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: postfeaturerevisionv2
        description: Create a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/latest
      name: v2-features-id-revisions-latest
      description: REST surface for v2-features-id-revisions-latest.
      operations:
      - method: GET
        name: getfeaturerevisionlatestv2
        description: Get the most recent active draft revision
        call: growthbook-feature-revisions-v2.getfeaturerevisionlatestv2
        with:
          id: rest.id
          mine: rest.mine
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}
      name: v2-features-id-revisions-version
      description: REST surface for v2-features-id-revisions-version.
      operations:
      - method: GET
        name: getfeaturerevisionv2
        description: Get a single feature revision
        call: growthbook-feature-revisions-v2.getfeaturerevisionv2
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/archive
      name: v2-features-id-revisions-version-archive
      description: REST surface for v2-features-id-revisions-version-archive.
      operations:
      - method: PUT
        name: putfeaturerevisionarchivev2
        description: Set archived state in a draft revision
        call: growthbook-feature-revisions-v2.putfeaturerevisionarchivev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/default-value
      name: v2-features-id-revisions-version-default-value
      description: REST surface for v2-features-id-revisions-version-default-value.
      operations:
      - method: PUT
        name: putfeaturerevisiondefaultvaluev2
        description: Set the default value in a draft revision
        call: growthbook-feature-revisions-v2.putfeaturerevisiondefaultvaluev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/discard
      name: v2-features-id-revisions-version-discard
      description: REST surface for v2-features-id-revisions-version-discard.
      operations:
      - method: POST
        name: postfeaturerevisiondiscardv2
        description: Discard a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisiondiscardv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/holdout
      name: v2-features-id-revisions-version-holdout
      description: REST surface for v2-features-id-revisions-version-holdout.
      operations:
      - method: PUT
        name: putfeaturerevisionholdoutv2
        description: Set holdout in a draft revision
        call: growthbook-feature-revisions-v2.putfeaturerevisionholdoutv2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/merge-status
      name: v2-features-id-revisions-version-merge-status
      description: REST surface for v2-features-id-revisions-version-merge-status.
      operations:
      - method: GET
        name: getfeaturerevisionmergestatusv2
        description: Get merge status for a draft revision
        call: growthbook-feature-revisions-v2.getfeaturerevisionmergestatusv2
        with:
          id: rest.id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/metadata
      name: v2-features-id-revisions-version-metadata
      description: REST surface for v2-features-id-revisions-version-metadata.
      operations:
      - method: PUT
        name: putfeaturerevisionmetadatav2
        description: Update revision metadata
        call: growthbook-feature-revisions-v2.putfeaturerevisionmetadatav2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/prerequisites
      name: v2-features-id-revisions-version-prerequisites
      description: REST surface for v2-features-id-revisions-version-prerequisites.
      operations:
      - method: PUT
        name: putfeaturerevisionprerequisitesv2
        description: Set feature-level prerequisites in a draft revision
        call: growthbook-feature-revisions-v2.putfeaturerevisionprerequisitesv2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/publish
      name: v2-features-id-revisions-version-publish
      description: REST surface for v2-features-id-revisions-version-publish.
      operations:
      - method: POST
        name: postfeaturerevisionpublishv2
        description: Publish a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionpublishv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/rebase
      name: v2-features-id-revisions-version-rebase
      description: REST surface for v2-features-id-revisions-version-rebase.
      operations:
      - method: POST
        name: postfeaturerevisionrebasev2
        description: Rebase a draft revision onto the current live version
        call: growthbook-feature-revisions-v2.postfeaturerevisionrebasev2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/request-review
      name: v2-features-id-revisions-version-request-review
      description: REST surface for v2-features-id-revisions-version-request-review.
      operations:
      - method: POST
        name: postfeaturerevisionrequestreviewv2
        description: Request review for a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionrequestreviewv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/revert
      name: v2-features-id-revisions-version-revert
      description: REST surface for v2-features-id-revisions-version-revert.
      operations:
      - method: POST
        name: postfeaturerevisionrevertv2
        description: Revert the feature to a prior revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionrevertv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/rules
      name: v2-features-id-revisions-version-rules
      description: REST surface for v2-features-id-revisions-version-rules.
      operations:
      - method: POST
        name: postfeaturerevisionruleaddv2
        description: Add a rule to a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionruleaddv2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/rules/reorder
      name: v2-features-id-revisions-version-rules-reorder
      description: REST surface for v2-features-id-revisions-version-rules-reorder.
      operations:
      - method: POST
        name: postfeaturerevisionrulesreorderv2
        description: Reorder rules in the revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionrulesreorderv2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/rules/{ruleid}
      name: v2-features-id-revisions-version-rules-ruleid
      description: REST surface for v2-features-id-revisions-version-rules-ruleId.
      operations:
      - method: PUT
        name: putfeaturerevisionrulev2
        description: Update a rule in a draft revision
        call: growthbook-feature-revisions-v2.putfeaturerevisionrulev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletefeaturerevisionrulev2
        description: Delete a rule from a draft revision
        call: growthbook-feature-revisions-v2.deletefeaturerevisionrulev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/rules/{ruleid}/ramp-schedule
      name: v2-features-id-revisions-version-rules-ruleid-ramp-schedule
      description: REST surface for v2-features-id-revisions-version-rules-ruleId-ramp-schedule.
      operations:
      - method: PUT
        name: putfeaturerevisionrulerampschedulev2
        description: Set ramp schedule for a rule
        call: growthbook-feature-revisions-v2.putfeaturerevisionrulerampschedulev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletefeaturerevisionrulerampschedulev2
        description: Remove ramp schedule from a rule
        call: growthbook-feature-revisions-v2.deletefeaturerevisionrulerampschedulev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/submit-review
      name: v2-features-id-revisions-version-submit-review
      description: REST surface for v2-features-id-revisions-version-submit-review.
      operations:
      - method: POST
        name: postfeaturerevisionsubmitreviewv2
        description: Submit a review on a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisionsubmitreviewv2
        with:
          id: rest.id
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/features/{id}/revisions/{version}/toggle
      name: v2-features-id-revisions-version-toggle
      description: REST surface for v2-features-id-revisions-version-toggle.
      operations:
      - method: POST
        name: postfeaturerevisiontogglev2
        description: Toggle an environment on/off in a draft revision
        call: growthbook-feature-revisions-v2.postfeaturerevisiontogglev2
        with:
          id: rest.id
          version: rest.version
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/v2/revisions
      name: v2-revisions
      description: REST surface for v2-revisions.
      operations:
      - method: GET
        name: listrevisionsv2
        description: List feature revisions
        call: growthbook-feature-revisions-v2.listrevisionsv2
        with:
          mine: rest.mine
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: growthbook-feature-revisions-v2-mcp
    port: 9090
    transport: http
    description: MCP adapter for GrowthBook REST API — feature-revisions-v2. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: list-revisions-feature
      description: List revisions for a feature
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.getfeaturerevisionsv2
      outputParameters:
      - type: object
        mapping: $.
    - name: create-draft-revision
      description: Create a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: growthbook-feature-revisions-v2.postfeaturerevisionv2
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-most-recent-active-draft
      description: Get the most recent active draft revision
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.getfeaturerevisionlatestv2
      with:
        id: tools.id
        mine: tools.mine
      outputParameters:
      - type: object
        mapping: $.
    - name: get-single-feature-revision
      description: Get a single feature revision
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.getfeaturerevisionv2
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: set-archived-state-draft-revision
      description: Set archived state in a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.putfeaturerevisionarchivev2
      with:
        id: tools.id
        version: tools.version
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-default-value-draft-revision
      description: Set the default value in a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.putfeaturerevisiondefaultvaluev2
      with:
        id: tools.id
        version: tools.version
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: discard-draft-revision
      description: Discard a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: growthbook-feature-revisions-v2.postfeaturerevisiondiscardv2
      with:
        id: tools.id
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-holdout-draft-revision
      description: Set holdout in a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.putfeaturerevisionholdoutv2
      with:
        id: tools.id
        version: tools.version
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: get-merge-status-draft-revision
      description: Get merge status for a draft revision
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.getfeaturerevisionmergestatusv2
      with:
        id: tools.id
      outputParameters:
      - type: object
        mapping: $.
    - name: update-revision-metadata
      description: Update revision metadata
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: growthbook-feature-revisions-v2.putfeaturerevisionmetadatav2
      with:
        id: tools.id
        version: tools.version
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: set-feature-level-prerequisites-draft
      description: Set feature-level prerequisites in a draft revision
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: growthbook-feature-revi

# --- truncated at 32 KB (37 KB total) ---
# Full source: https://raw.githubusercontent.com/api-evangelist/growthbook/refs/heads/main/capabilities/growthbook-feature-revisions-v2.yaml