naftiko: 1.0.0-alpha2 info: label: Split Feature Flag API — Feature Flags description: 'Split Feature Flag API — Feature Flags. 5 operations. Lead operation: List feature flags. Self-contained Naftiko capability covering one Split business surface.' tags: - Split - Feature Flags created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SPLIT_API_KEY: SPLIT_API_KEY capability: consumes: - type: http namespace: feature-flag-feature-flags baseUri: https://api.split.io/internal/api/v2 description: Split Feature Flag API — Feature Flags business capability. Self-contained, no shared references. resources: - name: splits-ws-workspaceId path: /splits/ws/{workspaceId} operations: - name: listfeatureflags method: GET description: List feature flags outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: tags in: query type: string description: Filter feature flags by tag names (comma-separated) - name: splits-ws-workspaceId-trafficTypes-trafficTypeId path: /splits/ws/{workspaceId}/trafficTypes/{trafficTypeId} operations: - name: createfeatureflag method: POST description: Create feature flag outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: trafficTypeId in: path type: string description: The identifier or name of the traffic type for the feature flag required: true - name: body in: body type: object description: Request body (JSON). required: true - name: splits-ws-workspaceId-featureFlagName path: /splits/ws/{workspaceId}/{featureFlagName} operations: - name: getfeatureflag method: GET description: Get feature flag outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatefeatureflag method: PUT description: Update feature flag outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: deletefeatureflag method: DELETE description: Delete feature flag outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.SPLIT_API_KEY}}' exposes: - type: rest namespace: feature-flag-feature-flags-rest port: 8080 description: REST adapter for Split Feature Flag API — Feature Flags. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/splits/ws/{workspaceid} name: splits-ws-workspaceid description: REST surface for splits-ws-workspaceId. operations: - method: GET name: listfeatureflags description: List feature flags call: feature-flag-feature-flags.listfeatureflags with: tags: rest.tags outputParameters: - type: object mapping: $. - path: /v1/splits/ws/{workspaceid}/traffictypes/{traffictypeid} name: splits-ws-workspaceid-traffictypes-traffictypeid description: REST surface for splits-ws-workspaceId-trafficTypes-trafficTypeId. operations: - method: POST name: createfeatureflag description: Create feature flag call: feature-flag-feature-flags.createfeatureflag with: trafficTypeId: rest.trafficTypeId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/splits/ws/{workspaceid}/{featureflagname} name: splits-ws-workspaceid-featureflagname description: REST surface for splits-ws-workspaceId-featureFlagName. operations: - method: GET name: getfeatureflag description: Get feature flag call: feature-flag-feature-flags.getfeatureflag outputParameters: - type: object mapping: $. - method: PUT name: updatefeatureflag description: Update feature flag call: feature-flag-feature-flags.updatefeatureflag with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletefeatureflag description: Delete feature flag call: feature-flag-feature-flags.deletefeatureflag outputParameters: - type: object mapping: $. - type: mcp namespace: feature-flag-feature-flags-mcp port: 9090 transport: http description: MCP adapter for Split Feature Flag API — Feature Flags. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-feature-flags description: List feature flags hints: readOnly: true destructive: false idempotent: true call: feature-flag-feature-flags.listfeatureflags with: tags: tools.tags outputParameters: - type: object mapping: $. - name: create-feature-flag description: Create feature flag hints: readOnly: false destructive: false idempotent: false call: feature-flag-feature-flags.createfeatureflag with: trafficTypeId: tools.trafficTypeId body: tools.body outputParameters: - type: object mapping: $. - name: get-feature-flag description: Get feature flag hints: readOnly: true destructive: false idempotent: true call: feature-flag-feature-flags.getfeatureflag outputParameters: - type: object mapping: $. - name: update-feature-flag description: Update feature flag hints: readOnly: false destructive: false idempotent: true call: feature-flag-feature-flags.updatefeatureflag with: body: tools.body outputParameters: - type: object mapping: $. - name: delete-feature-flag description: Delete feature flag hints: readOnly: false destructive: true idempotent: true call: feature-flag-feature-flags.deletefeatureflag outputParameters: - type: object mapping: $.