Incus · Capability

Incus external REST API — network-address-sets

Incus external REST API — network-address-sets. 8 operations. Lead operation: Get the network address sets. Self-contained Naftiko capability covering one Incus business surface.

Run with Naftiko Incusnetwork-address-sets

What You Can Do

GET
Networkaddresssetsget — Get the network address sets
/v1/1-0/network-address-sets
POST
Networkaddresssetspost — Add a network address set
/v1/1-0/network-address-sets
DELETE
Networkaddresssetdelete — Delete the network address set
/v1/1-0/network-address-sets/{name}
GET
Networkaddresssetget — Get the network address set
/v1/1-0/network-address-sets/{name}
PATCH
Networkaddresssetpatch — Partially update the network address set
/v1/1-0/network-address-sets/{name}
POST
Networkaddresssetpost — Rename the network address set
/v1/1-0/network-address-sets/{name}
PUT
Networkaddresssetput — Update the network address set
/v1/1-0/network-address-sets/{name}
GET
Networkaddresssetsgetrecursion1 — Get the network address sets
/v1/1-0/network-address-sets-recursion-1

MCP Tools

get-network-address-sets

Get the network address sets

read-only idempotent
add-network-address-set

Add a network address set

delete-network-address-set

Delete the network address set

idempotent
get-network-address-set

Get the network address set

read-only idempotent
partially-update-network-address-set

Partially update the network address set

idempotent
rename-network-address-set

Rename the network address set

update-network-address-set

Update the network address set

idempotent
get-network-address-sets-2

Get the network address sets

read-only idempotent

Capability Spec

incus-network-address-sets.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Incus external REST API — network-address-sets
  description: 'Incus external REST API — network-address-sets. 8 operations. Lead operation: Get the network address sets.
    Self-contained Naftiko capability covering one Incus business surface.'
  tags:
  - Incus
  - network-address-sets
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    INCUS_API_KEY: INCUS_API_KEY
capability:
  consumes:
  - type: http
    namespace: incus-network-address-sets
    baseUri: ''
    description: Incus external REST API — network-address-sets business capability. Self-contained, no shared references.
    resources:
    - name: 1.0-network-address-sets
      path: /1.0/network-address-sets
      operations:
      - name: networkaddresssetsget
        method: GET
        description: Get the network address sets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve network address sets from all projects
        - name: filter
          in: query
          type: string
          description: Collection filter
      - name: networkaddresssetspost
        method: POST
        description: Add a network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: address set
          in: body
          type: string
          description: address set
          required: true
    - name: 1.0-network-address-sets-name
      path: /1.0/network-address-sets/{name}
      operations:
      - name: networkaddresssetdelete
        method: DELETE
        description: Delete the network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Address set name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: networkaddresssetget
        method: GET
        description: Get the network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Address set name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
      - name: networkaddresssetpatch
        method: PATCH
        description: Partially update the network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Address set name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: address set
          in: body
          type: string
          description: Address set configuration
          required: true
      - name: networkaddresssetpost
        method: POST
        description: Rename the network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Address set name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: address set
          in: body
          type: string
          description: Address set rename request
          required: true
      - name: networkaddresssetput
        method: PUT
        description: Update the network address set
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: name
          in: path
          type: string
          description: Address set name
          required: true
        - name: project
          in: query
          type: string
          description: Project name
        - name: address set
          in: body
          type: string
          description: Address set configuration
          required: true
    - name: 1.0-network-address-sets?recursion=1
      path: /1.0/network-address-sets?recursion=1
      operations:
      - name: networkaddresssetsgetrecursion1
        method: GET
        description: Get the network address sets
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: project
          in: query
          type: string
          description: Project name
        - name: all-projects
          in: query
          type: boolean
          description: Retrieve network address sets from all projects
        - name: filter
          in: query
          type: string
          description: Collection filter
  exposes:
  - type: rest
    namespace: incus-network-address-sets-rest
    port: 8080
    description: REST adapter for Incus external REST API — network-address-sets. One Spectral-compliant resource per consumed
      operation, prefixed with /v1.
    resources:
    - path: /v1/1-0/network-address-sets
      name: 1-0-network-address-sets
      description: REST surface for 1.0-network-address-sets.
      operations:
      - method: GET
        name: networkaddresssetsget
        description: Get the network address sets
        call: incus-network-address-sets.networkaddresssetsget
        with:
          project: rest.project
          all-projects: rest.all-projects
          filter: rest.filter
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: networkaddresssetspost
        description: Add a network address set
        call: incus-network-address-sets.networkaddresssetspost
        with:
          project: rest.project
          address set: rest.address set
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/1-0/network-address-sets/{name}
      name: 1-0-network-address-sets-name
      description: REST surface for 1.0-network-address-sets-name.
      operations:
      - method: DELETE
        name: networkaddresssetdelete
        description: Delete the network address set
        call: incus-network-address-sets.networkaddresssetdelete
        with:
          name: rest.name
          project: rest.project
        outputParameters:
        - type: object
          mapping: $.
      - method: GET
        name: networkaddresssetget
        description: Get the network address set
        call: incus-network-address-sets.networkaddresssetget
        with:
          name: rest.name
          project: rest.project
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: networkaddresssetpatch
        description: Partially update the network address set
        call: incus-network-address-sets.networkaddresssetpatch
        with:
          name: rest.name
          project: rest.project
          address set: rest.address set
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: networkaddresssetpost
        description: Rename the network address set
        call: incus-network-address-sets.networkaddresssetpost
        with:
          name: rest.name
          project: rest.project
          address set: rest.address set
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: networkaddresssetput
        description: Update the network address set
        call: incus-network-address-sets.networkaddresssetput
        with:
          name: rest.name
          project: rest.project
          address set: rest.address set
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/1-0/network-address-sets-recursion-1
      name: 1-0-network-address-sets-recursion-1
      description: REST surface for 1.0-network-address-sets?recursion=1.
      operations:
      - method: GET
        name: networkaddresssetsgetrecursion1
        description: Get the network address sets
        call: incus-network-address-sets.networkaddresssetsgetrecursion1
        with:
          project: rest.project
          all-projects: rest.all-projects
          filter: rest.filter
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: incus-network-address-sets-mcp
    port: 9090
    transport: http
    description: MCP adapter for Incus external REST API — network-address-sets. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: get-network-address-sets
      description: Get the network address sets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: incus-network-address-sets.networkaddresssetsget
      with:
        project: tools.project
        all-projects: tools.all-projects
        filter: tools.filter
      outputParameters:
      - type: object
        mapping: $.
    - name: add-network-address-set
      description: Add a network address set
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: incus-network-address-sets.networkaddresssetspost
      with:
        project: tools.project
        address set: tools.address set
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-network-address-set
      description: Delete the network address set
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: incus-network-address-sets.networkaddresssetdelete
      with:
        name: tools.name
        project: tools.project
      outputParameters:
      - type: object
        mapping: $.
    - name: get-network-address-set
      description: Get the network address set
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: incus-network-address-sets.networkaddresssetget
      with:
        name: tools.name
        project: tools.project
      outputParameters:
      - type: object
        mapping: $.
    - name: partially-update-network-address-set
      description: Partially update the network address set
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: incus-network-address-sets.networkaddresssetpatch
      with:
        name: tools.name
        project: tools.project
        address set: tools.address set
      outputParameters:
      - type: object
        mapping: $.
    - name: rename-network-address-set
      description: Rename the network address set
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: incus-network-address-sets.networkaddresssetpost
      with:
        name: tools.name
        project: tools.project
        address set: tools.address set
      outputParameters:
      - type: object
        mapping: $.
    - name: update-network-address-set
      description: Update the network address set
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: incus-network-address-sets.networkaddresssetput
      with:
        name: tools.name
        project: tools.project
        address set: tools.address set
      outputParameters:
      - type: object
        mapping: $.
    - name: get-network-address-sets-2
      description: Get the network address sets
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: incus-network-address-sets.networkaddresssetsgetrecursion1
      with:
        project: tools.project
        all-projects: tools.all-projects
        filter: tools.filter
      outputParameters:
      - type: object
        mapping: $.