NGINX · Capability

NGINX Plus REST API — Stream Upstreams

NGINX Plus REST API — Stream Upstreams. 8 operations. Lead operation: NGINX Return Status of All Stream Upstream Server Groups. Self-contained Naftiko capability covering one Nginx business surface.

Run with Naftiko NginxStream Upstreams

What You Can Do

GET
Getstreamupstreams — NGINX Return Status of All Stream Upstream Server Groups
/v1/stream/upstreams
GET
Getstreamupstream — NGINX Return Status of a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}
DELETE
Deletestreamupstreamstat — NGINX Reset Statistics of a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}
GET
Getstreamupstreamservers — NGINX Return Configuration of All Servers in a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}/servers
POST
Poststreamupstreamserver — NGINX Add a Server to a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}/servers
GET
Getstreamupstreamserver — NGINX Return Configuration of a Server in a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}/servers/{streamupstreamserverid}
PATCH
Patchstreamupstreamserver — NGINX Modify a Server in a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}/servers/{streamupstreamserverid}
DELETE
Deletestreamupstreamserver — NGINX Remove a Server from a Stream Upstream Server Group
/v1/stream/upstreams/{streamupstreamname}/servers/{streamupstreamserverid}

MCP Tools

nginx-return-status-all-stream

NGINX Return Status of All Stream Upstream Server Groups

read-only idempotent
nginx-return-status-stream-upstream

NGINX Return Status of a Stream Upstream Server Group

read-only idempotent
nginx-reset-statistics-stream-upstream

NGINX Reset Statistics of a Stream Upstream Server Group

idempotent
nginx-return-configuration-all-servers

NGINX Return Configuration of All Servers in a Stream Upstream Server Group

read-only idempotent
nginx-add-server-stream-upstream

NGINX Add a Server to a Stream Upstream Server Group

nginx-return-configuration-server-stream

NGINX Return Configuration of a Server in a Stream Upstream Server Group

read-only idempotent
nginx-modify-server-stream-upstream

NGINX Modify a Server in a Stream Upstream Server Group

idempotent
nginx-remove-server-stream-upstream

NGINX Remove a Server from a Stream Upstream Server Group

idempotent

Capability Spec

plus-http-stream-upstreams.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: NGINX Plus REST API — Stream Upstreams
  description: 'NGINX Plus REST API — Stream Upstreams. 8 operations. Lead operation: NGINX Return Status of All Stream Upstream
    Server Groups. Self-contained Naftiko capability covering one Nginx business surface.'
  tags:
  - Nginx
  - Stream Upstreams
  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-stream-upstreams
    baseUri: ''
    description: NGINX Plus REST API — Stream Upstreams business capability. Self-contained, no shared references.
    resources:
    - name: stream-upstreams
      path: /stream/upstreams/
      operations:
      - name: getstreamupstreams
        method: GET
        description: NGINX Return Status of All Stream Upstream Server Groups
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of upstream server groups will be output. If the “<literal>fields</literal>” value
            is empty, only names of upstreams will be output.
    - name: stream-upstreams-streamUpstreamName
      path: /stream/upstreams/{streamUpstreamName}/
      operations:
      - name: getstreamupstream
        method: GET
        description: NGINX Return Status of a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: fields
          in: query
          type: string
          description: Limits which fields of the upstream server group will be output.
      - name: deletestreamupstreamstat
        method: DELETE
        description: NGINX Reset Statistics of a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: stream-upstreams-streamUpstreamName-servers
      path: /stream/upstreams/{streamUpstreamName}/servers/
      operations:
      - name: getstreamupstreamservers
        method: GET
        description: NGINX Return Configuration of All Servers in a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: poststreamupstreamserver
        method: POST
        description: NGINX Add a Server to a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: postStreamUpstreamServer
          in: body
          type: string
          description: Address of a new server and other optional parameters in the JSON format. The “*ID*”, “*backup*”, and
            “*service*” parameters cannot be changed.
          required: true
    - name: stream-upstreams-streamUpstreamName-servers-streamUpstreamServerId
      path: /stream/upstreams/{streamUpstreamName}/servers/{streamUpstreamServerId}
      operations:
      - name: getstreamupstreamserver
        method: GET
        description: NGINX Return Configuration of a Server in a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: patchstreamupstreamserver
        method: PATCH
        description: NGINX Modify a Server in a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: patchStreamUpstreamServer
          in: body
          type: string
          description: Server parameters, specified in the JSON format. The “*ID*”, “*backup*”, and “*service*” parameters
            cannot be changed.
          required: true
      - name: deletestreamupstreamserver
        method: DELETE
        description: NGINX Remove a Server from a Stream Upstream Server Group
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    namespace: plus-http-stream-upstreams-rest
    port: 8080
    description: REST adapter for NGINX Plus REST API — Stream Upstreams. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/stream/upstreams
      name: stream-upstreams
      description: REST surface for stream-upstreams.
      operations:
      - method: GET
        name: getstreamupstreams
        description: NGINX Return Status of All Stream Upstream Server Groups
        call: plus-http-stream-upstreams.getstreamupstreams
        with:
          fields: rest.fields
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/stream/upstreams/{streamupstreamname}
      name: stream-upstreams-streamupstreamname
      description: REST surface for stream-upstreams-streamUpstreamName.
      operations:
      - method: GET
        name: getstreamupstream
        description: NGINX Return Status of a Stream Upstream Server Group
        call: plus-http-stream-upstreams.getstreamupstream
        with:
          fields: rest.fields
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletestreamupstreamstat
        description: NGINX Reset Statistics of a Stream Upstream Server Group
        call: plus-http-stream-upstreams.deletestreamupstreamstat
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/stream/upstreams/{streamupstreamname}/servers
      name: stream-upstreams-streamupstreamname-servers
      description: REST surface for stream-upstreams-streamUpstreamName-servers.
      operations:
      - method: GET
        name: getstreamupstreamservers
        description: NGINX Return Configuration of All Servers in a Stream Upstream Server Group
        call: plus-http-stream-upstreams.getstreamupstreamservers
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: poststreamupstreamserver
        description: NGINX Add a Server to a Stream Upstream Server Group
        call: plus-http-stream-upstreams.poststreamupstreamserver
        with:
          postStreamUpstreamServer: rest.postStreamUpstreamServer
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/stream/upstreams/{streamupstreamname}/servers/{streamupstreamserverid}
      name: stream-upstreams-streamupstreamname-servers-streamupstreamserverid
      description: REST surface for stream-upstreams-streamUpstreamName-servers-streamUpstreamServerId.
      operations:
      - method: GET
        name: getstreamupstreamserver
        description: NGINX Return Configuration of a Server in a Stream Upstream Server Group
        call: plus-http-stream-upstreams.getstreamupstreamserver
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: patchstreamupstreamserver
        description: NGINX Modify a Server in a Stream Upstream Server Group
        call: plus-http-stream-upstreams.patchstreamupstreamserver
        with:
          patchStreamUpstreamServer: rest.patchStreamUpstreamServer
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletestreamupstreamserver
        description: NGINX Remove a Server from a Stream Upstream Server Group
        call: plus-http-stream-upstreams.deletestreamupstreamserver
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: plus-http-stream-upstreams-mcp
    port: 9090
    transport: http
    description: MCP adapter for NGINX Plus REST API — Stream Upstreams. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: nginx-return-status-all-stream
      description: NGINX Return Status of All Stream Upstream Server Groups
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: plus-http-stream-upstreams.getstreamupstreams
      with:
        fields: tools.fields
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-return-status-stream-upstream
      description: NGINX Return Status of a Stream Upstream Server Group
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: plus-http-stream-upstreams.getstreamupstream
      with:
        fields: tools.fields
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-reset-statistics-stream-upstream
      description: NGINX Reset Statistics of a Stream Upstream Server Group
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: plus-http-stream-upstreams.deletestreamupstreamstat
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-return-configuration-all-servers
      description: NGINX Return Configuration of All Servers in a Stream Upstream Server Group
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: plus-http-stream-upstreams.getstreamupstreamservers
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-add-server-stream-upstream
      description: NGINX Add a Server to a Stream Upstream Server Group
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: plus-http-stream-upstreams.poststreamupstreamserver
      with:
        postStreamUpstreamServer: tools.postStreamUpstreamServer
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-return-configuration-server-stream
      description: NGINX Return Configuration of a Server in a Stream Upstream Server Group
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: plus-http-stream-upstreams.getstreamupstreamserver
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-modify-server-stream-upstream
      description: NGINX Modify a Server in a Stream Upstream Server Group
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: plus-http-stream-upstreams.patchstreamupstreamserver
      with:
        patchStreamUpstreamServer: tools.patchStreamUpstreamServer
      outputParameters:
      - type: object
        mapping: $.
    - name: nginx-remove-server-stream-upstream
      description: NGINX Remove a Server from a Stream Upstream Server Group
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: plus-http-stream-upstreams.deletestreamupstreamserver
      outputParameters:
      - type: object
        mapping: $.