naftiko: 1.0.0-alpha2 info: label: Statsig Console API — Gates description: 'Statsig Console API — Gates. 17 operations. Lead operation: List all gates. Self-contained Naftiko capability covering one Statsig business surface.' tags: - Statsig - Gates created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: STATSIG_API_KEY: STATSIG_API_KEY capability: consumes: - type: http namespace: console-gates baseUri: https://statsigapi.net/console/v1 description: Statsig Console API — Gates business capability. Self-contained, no shared references. resources: - name: gates path: /gates operations: - name: listgates method: GET description: List all gates outputRawFormat: json outputParameters: - name: result type: object value: $. - name: creategate method: POST description: Create a gate outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: gates-id path: /gates/{id} operations: - name: getgate method: GET description: Get a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: partiallyupdategate method: PATCH description: Partially update a gate outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletegate method: DELETE description: Delete a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-archive path: /gates/{id}/archive operations: - name: archivegate method: PUT description: Archive a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-disable path: /gates/{id}/disable operations: - name: disablegate method: PUT description: Disable a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-enable path: /gates/{id}/enable operations: - name: enablegate method: PUT description: Enable a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-launch path: /gates/{id}/launch operations: - name: launchgate method: PUT description: Launch a gate outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-overrides path: /gates/{id}/overrides operations: - name: getgateoverrides method: GET description: Get gate overrides outputRawFormat: json outputParameters: - name: result type: object value: $. - name: addgateoverrides method: POST description: Add gate overrides outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: updategateoverrides method: PUT description: Update gate overrides outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletegateoverrides method: DELETE description: Delete gate overrides outputRawFormat: json outputParameters: - name: result type: object value: $. - name: gates-id-rules path: /gates/{id}/rules operations: - name: listgaterules method: GET description: List gate rules outputRawFormat: json outputParameters: - name: result type: object value: $. - name: addgaterule method: POST description: Add a gate rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: updategaterules method: PUT description: Update gate rules outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: gates-id-rules-ruleID path: /gates/{id}/rules/{ruleID} operations: - name: deletegaterule method: DELETE description: Delete a gate rule outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: ruleID in: path type: string description: The identifier of the rule to delete. required: true authentication: type: apikey key: STATSIG-API-KEY value: '{{env.STATSIG_API_KEY}}' placement: header exposes: - type: rest namespace: console-gates-rest port: 8080 description: REST adapter for Statsig Console API — Gates. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/gates name: gates description: REST surface for gates. operations: - method: GET name: listgates description: List all gates call: console-gates.listgates outputParameters: - type: object mapping: $. - method: POST name: creategate description: Create a gate call: console-gates.creategate with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/gates/{id} name: gates-id description: REST surface for gates-id. operations: - method: GET name: getgate description: Get a gate call: console-gates.getgate outputParameters: - type: object mapping: $. - method: PATCH name: partiallyupdategate description: Partially update a gate call: console-gates.partiallyupdategate with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletegate description: Delete a gate call: console-gates.deletegate outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/archive name: gates-id-archive description: REST surface for gates-id-archive. operations: - method: PUT name: archivegate description: Archive a gate call: console-gates.archivegate outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/disable name: gates-id-disable description: REST surface for gates-id-disable. operations: - method: PUT name: disablegate description: Disable a gate call: console-gates.disablegate outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/enable name: gates-id-enable description: REST surface for gates-id-enable. operations: - method: PUT name: enablegate description: Enable a gate call: console-gates.enablegate outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/launch name: gates-id-launch description: REST surface for gates-id-launch. operations: - method: PUT name: launchgate description: Launch a gate call: console-gates.launchgate outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/overrides name: gates-id-overrides description: REST surface for gates-id-overrides. operations: - method: GET name: getgateoverrides description: Get gate overrides call: console-gates.getgateoverrides outputParameters: - type: object mapping: $. - method: POST name: addgateoverrides description: Add gate overrides call: console-gates.addgateoverrides with: body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: updategateoverrides description: Update gate overrides call: console-gates.updategateoverrides with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletegateoverrides description: Delete gate overrides call: console-gates.deletegateoverrides outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/rules name: gates-id-rules description: REST surface for gates-id-rules. operations: - method: GET name: listgaterules description: List gate rules call: console-gates.listgaterules outputParameters: - type: object mapping: $. - method: POST name: addgaterule description: Add a gate rule call: console-gates.addgaterule with: body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: updategaterules description: Update gate rules call: console-gates.updategaterules with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/gates/{id}/rules/{ruleid} name: gates-id-rules-ruleid description: REST surface for gates-id-rules-ruleID. operations: - method: DELETE name: deletegaterule description: Delete a gate rule call: console-gates.deletegaterule with: ruleID: rest.ruleID outputParameters: - type: object mapping: $. - type: mcp namespace: console-gates-mcp port: 9090 transport: http description: MCP adapter for Statsig Console API — Gates. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-all-gates description: List all gates hints: readOnly: true destructive: false idempotent: true call: console-gates.listgates outputParameters: - type: object mapping: $. - name: create-gate description: Create a gate hints: readOnly: false destructive: false idempotent: false call: console-gates.creategate with: body: tools.body outputParameters: - type: object mapping: $. - name: get-gate description: Get a gate hints: readOnly: true destructive: false idempotent: true call: console-gates.getgate outputParameters: - type: object mapping: $. - name: partially-update-gate description: Partially update a gate hints: readOnly: false destructive: false idempotent: true call: console-gates.partiallyupdategate with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-gate description: Delete a gate hints: readOnly: false destructive: true idempotent: true call: console-gates.deletegate outputParameters: - type: object mapping: $. - name: archive-gate description: Archive a gate hints: readOnly: false destructive: false idempotent: true call: console-gates.archivegate outputParameters: - type: object mapping: $. - name: disable-gate description: Disable a gate hints: readOnly: false destructive: false idempotent: true call: console-gates.disablegate outputParameters: - type: object mapping: $. - name: enable-gate description: Enable a gate hints: readOnly: false destructive: false idempotent: true call: console-gates.enablegate outputParameters: - type: object mapping: $. - name: launch-gate description: Launch a gate hints: readOnly: false destructive: false idempotent: true call: console-gates.launchgate outputParameters: - type: object mapping: $. - name: get-gate-overrides description: Get gate overrides hints: readOnly: true destructive: false idempotent: true call: console-gates.getgateoverrides outputParameters: - type: object mapping: $. - name: add-gate-overrides description: Add gate overrides hints: readOnly: false destructive: false idempotent: false call: console-gates.addgateoverrides with: body: tools.body outputParameters: - type: object mapping: $. - name: update-gate-overrides description: Update gate overrides hints: readOnly: false destructive: false idempotent: true call: console-gates.updategateoverrides with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-gate-overrides description: Delete gate overrides hints: readOnly: false destructive: true idempotent: true call: console-gates.deletegateoverrides outputParameters: - type: object mapping: $. - name: list-gate-rules description: List gate rules hints: readOnly: true destructive: false idempotent: true call: console-gates.listgaterules outputParameters: - type: object mapping: $. - name: add-gate-rule description: Add a gate rule hints: readOnly: false destructive: false idempotent: false call: console-gates.addgaterule with: body: tools.body outputParameters: - type: object mapping: $. - name: update-gate-rules description: Update gate rules hints: readOnly: false destructive: false idempotent: true call: console-gates.updategaterules with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-gate-rule description: Delete a gate rule hints: readOnly: false destructive: true idempotent: true call: console-gates.deletegaterule with: ruleID: tools.ruleID outputParameters: - type: object mapping: $.