naftiko: 1.0.0-alpha2 info: label: NGINX Plus REST API — HTTP Keyvals description: 'NGINX Plus REST API — HTTP Keyvals. 5 operations. Lead operation: NGINX Return Key-Value Pairs from All HTTP Keyval Zones. Self-contained Naftiko capability covering one Nginx business surface.' tags: - Nginx - HTTP Keyvals created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: NGINX_API_KEY: NGINX_API_KEY capability: consumes: - type: http namespace: plus-http-http-keyvals baseUri: '' description: NGINX Plus REST API — HTTP Keyvals business capability. Self-contained, no shared references. resources: - name: http-keyvals path: /http/keyvals/ operations: - name: gethttpkeyvalzones method: GET description: NGINX Return Key-Value Pairs from All HTTP Keyval Zones outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fields in: query type: string description: If the “fields” value is empty, then only HTTP keyval zone names will be output. - name: http-keyvals-httpKeyvalZoneName path: /http/keyvals/{httpKeyvalZoneName} operations: - name: gethttpkeyvalzonekeysvalues method: GET description: NGINX Return Key-Value Pairs from an HTTP Keyval Zone outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: key in: query type: string description: Get a particular key-value pair from the HTTP keyval zone. - name: posthttpkeyvalzonedata method: POST description: NGINX Add a Key-Value Pair to the HTTP Keyval Zone outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: Key-value in: body type: string description: A key-value pair is specified in the JSON format. Several key-value pairs can be entered if the HTTP keyval shared memory zone is empty. Expiration time in mill required: true - name: patchhttpkeyvalzonekeyvalue method: PATCH description: NGINX Modify a Key-Value or Delete a Key outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: httpKeyvalZoneKeyValue in: body type: string description: A new value for the key is specified in the JSON format. required: true - name: deletehttpkeyvalzonedata method: DELETE description: NGINX Empty the HTTP Keyval Zone outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: plus-http-http-keyvals-rest port: 8080 description: REST adapter for NGINX Plus REST API — HTTP Keyvals. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/http/keyvals name: http-keyvals description: REST surface for http-keyvals. operations: - method: GET name: gethttpkeyvalzones description: NGINX Return Key-Value Pairs from All HTTP Keyval Zones call: plus-http-http-keyvals.gethttpkeyvalzones with: fields: rest.fields outputParameters: - type: object mapping: $. - path: /v1/http/keyvals/{httpkeyvalzonename} name: http-keyvals-httpkeyvalzonename description: REST surface for http-keyvals-httpKeyvalZoneName. operations: - method: GET name: gethttpkeyvalzonekeysvalues description: NGINX Return Key-Value Pairs from an HTTP Keyval Zone call: plus-http-http-keyvals.gethttpkeyvalzonekeysvalues with: key: rest.key outputParameters: - type: object mapping: $. - method: POST name: posthttpkeyvalzonedata description: NGINX Add a Key-Value Pair to the HTTP Keyval Zone call: plus-http-http-keyvals.posthttpkeyvalzonedata with: Key-value: rest.Key-value outputParameters: - type: object mapping: $. - method: PATCH name: patchhttpkeyvalzonekeyvalue description: NGINX Modify a Key-Value or Delete a Key call: plus-http-http-keyvals.patchhttpkeyvalzonekeyvalue with: httpKeyvalZoneKeyValue: rest.httpKeyvalZoneKeyValue outputParameters: - type: object mapping: $. - method: DELETE name: deletehttpkeyvalzonedata description: NGINX Empty the HTTP Keyval Zone call: plus-http-http-keyvals.deletehttpkeyvalzonedata outputParameters: - type: object mapping: $. - type: mcp namespace: plus-http-http-keyvals-mcp port: 9090 transport: http description: MCP adapter for NGINX Plus REST API — HTTP Keyvals. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: nginx-return-key-value-pairs description: NGINX Return Key-Value Pairs from All HTTP Keyval Zones hints: readOnly: true destructive: false idempotent: true call: plus-http-http-keyvals.gethttpkeyvalzones with: fields: tools.fields outputParameters: - type: object mapping: $. - name: nginx-return-key-value-pairs-2 description: NGINX Return Key-Value Pairs from an HTTP Keyval Zone hints: readOnly: true destructive: false idempotent: true call: plus-http-http-keyvals.gethttpkeyvalzonekeysvalues with: key: tools.key outputParameters: - type: object mapping: $. - name: nginx-add-key-value-pair description: NGINX Add a Key-Value Pair to the HTTP Keyval Zone hints: readOnly: false destructive: false idempotent: false call: plus-http-http-keyvals.posthttpkeyvalzonedata with: Key-value: tools.Key-value outputParameters: - type: object mapping: $. - name: nginx-modify-key-value-delete description: NGINX Modify a Key-Value or Delete a Key hints: readOnly: false destructive: false idempotent: true call: plus-http-http-keyvals.patchhttpkeyvalzonekeyvalue with: httpKeyvalZoneKeyValue: tools.httpKeyvalZoneKeyValue outputParameters: - type: object mapping: $. - name: nginx-empty-http-keyval-zone description: NGINX Empty the HTTP Keyval Zone hints: readOnly: false destructive: true idempotent: true call: plus-http-http-keyvals.deletehttpkeyvalzonedata outputParameters: - type: object mapping: $.