Incus · Capability
Incus external REST API — network-peers
Incus external REST API — network-peers. 7 operations. Lead operation: Get the network peers. Self-contained Naftiko capability covering one Incus business surface.
What You Can Do
GET
Networkpeersget
— Get the network peers
/v1/1-0/networks/{networkname}/peers
POST
Networkpeerspost
— Add a network peer
/v1/1-0/networks/{networkname}/peers
DELETE
Networkpeerdelete
— Delete the network peer
/v1/1-0/networks/{networkname}/peers/{peername}
GET
Networkpeerget
— Get the network peer
/v1/1-0/networks/{networkname}/peers/{peername}
PATCH
Networkpeerpatch
— Partially update the network peer
/v1/1-0/networks/{networkname}/peers/{peername}
PUT
Networkpeerput
— Update the network peer
/v1/1-0/networks/{networkname}/peers/{peername}
GET
Networkpeergetrecursion1
— Get the network peers
/v1/1-0/networks/{networkname}/peers-recursion-1
MCP Tools
get-network-peers
Get the network peers
read-only
idempotent
add-network-peer
Add a network peer
delete-network-peer
Delete the network peer
idempotent
get-network-peer
Get the network peer
read-only
idempotent
partially-update-network-peer
Partially update the network peer
idempotent
update-network-peer
Update the network peer
idempotent
get-network-peers-2
Get the network peers
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Incus external REST API — network-peers
description: 'Incus external REST API — network-peers. 7 operations. Lead operation: Get the network peers. Self-contained
Naftiko capability covering one Incus business surface.'
tags:
- Incus
- network-peers
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-peers
baseUri: ''
description: Incus external REST API — network-peers business capability. Self-contained, no shared references.
resources:
- name: 1.0-networks-networkName-peers
path: /1.0/networks/{networkName}/peers
operations:
- name: networkpeersget
method: GET
description: Get the network peers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: project
in: query
type: string
description: Project name
- name: filter
in: query
type: string
description: Collection filter
- name: networkpeerspost
method: POST
description: Add a network peer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: project
in: query
type: string
description: Project name
- name: peer
in: body
type: string
description: Peer
required: true
- name: 1.0-networks-networkName-peers-peerName
path: /1.0/networks/{networkName}/peers/{peerName}
operations:
- name: networkpeerdelete
method: DELETE
description: Delete the network peer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: peerName
in: path
type: string
description: Peer name
required: true
- name: project
in: query
type: string
description: Project name
- name: networkpeerget
method: GET
description: Get the network peer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: peerName
in: path
type: string
description: Peer name
required: true
- name: project
in: query
type: string
description: Project name
- name: networkpeerpatch
method: PATCH
description: Partially update the network peer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: peerName
in: path
type: string
description: Peer name
required: true
- name: project
in: query
type: string
description: Project name
- name: Peer
in: body
type: string
description: Peer configuration
required: true
- name: networkpeerput
method: PUT
description: Update the network peer
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: peerName
in: path
type: string
description: Peer name
required: true
- name: project
in: query
type: string
description: Project name
- name: peer
in: body
type: string
description: Peer configuration
required: true
- name: 1.0-networks-networkName-peers?recursion=1
path: /1.0/networks/{networkName}/peers?recursion=1
operations:
- name: networkpeergetrecursion1
method: GET
description: Get the network peers
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: networkName
in: path
type: string
description: Network name
required: true
- name: project
in: query
type: string
description: Project name
- name: filter
in: query
type: string
description: Collection filter
exposes:
- type: rest
namespace: incus-network-peers-rest
port: 8080
description: REST adapter for Incus external REST API — network-peers. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/1-0/networks/{networkname}/peers
name: 1-0-networks-networkname-peers
description: REST surface for 1.0-networks-networkName-peers.
operations:
- method: GET
name: networkpeersget
description: Get the network peers
call: incus-network-peers.networkpeersget
with:
networkName: rest.networkName
project: rest.project
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- method: POST
name: networkpeerspost
description: Add a network peer
call: incus-network-peers.networkpeerspost
with:
networkName: rest.networkName
project: rest.project
peer: rest.peer
outputParameters:
- type: object
mapping: $.
- path: /v1/1-0/networks/{networkname}/peers/{peername}
name: 1-0-networks-networkname-peers-peername
description: REST surface for 1.0-networks-networkName-peers-peerName.
operations:
- method: DELETE
name: networkpeerdelete
description: Delete the network peer
call: incus-network-peers.networkpeerdelete
with:
networkName: rest.networkName
peerName: rest.peerName
project: rest.project
outputParameters:
- type: object
mapping: $.
- method: GET
name: networkpeerget
description: Get the network peer
call: incus-network-peers.networkpeerget
with:
networkName: rest.networkName
peerName: rest.peerName
project: rest.project
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: networkpeerpatch
description: Partially update the network peer
call: incus-network-peers.networkpeerpatch
with:
networkName: rest.networkName
peerName: rest.peerName
project: rest.project
Peer: rest.Peer
outputParameters:
- type: object
mapping: $.
- method: PUT
name: networkpeerput
description: Update the network peer
call: incus-network-peers.networkpeerput
with:
networkName: rest.networkName
peerName: rest.peerName
project: rest.project
peer: rest.peer
outputParameters:
- type: object
mapping: $.
- path: /v1/1-0/networks/{networkname}/peers-recursion-1
name: 1-0-networks-networkname-peers-recursion-1
description: REST surface for 1.0-networks-networkName-peers?recursion=1.
operations:
- method: GET
name: networkpeergetrecursion1
description: Get the network peers
call: incus-network-peers.networkpeergetrecursion1
with:
networkName: rest.networkName
project: rest.project
filter: rest.filter
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: incus-network-peers-mcp
port: 9090
transport: http
description: MCP adapter for Incus external REST API — network-peers. One tool per consumed operation, routed inline through
this capability's consumes block.
tools:
- name: get-network-peers
description: Get the network peers
hints:
readOnly: true
destructive: false
idempotent: true
call: incus-network-peers.networkpeersget
with:
networkName: tools.networkName
project: tools.project
filter: tools.filter
outputParameters:
- type: object
mapping: $.
- name: add-network-peer
description: Add a network peer
hints:
readOnly: false
destructive: false
idempotent: false
call: incus-network-peers.networkpeerspost
with:
networkName: tools.networkName
project: tools.project
peer: tools.peer
outputParameters:
- type: object
mapping: $.
- name: delete-network-peer
description: Delete the network peer
hints:
readOnly: false
destructive: true
idempotent: true
call: incus-network-peers.networkpeerdelete
with:
networkName: tools.networkName
peerName: tools.peerName
project: tools.project
outputParameters:
- type: object
mapping: $.
- name: get-network-peer
description: Get the network peer
hints:
readOnly: true
destructive: false
idempotent: true
call: incus-network-peers.networkpeerget
with:
networkName: tools.networkName
peerName: tools.peerName
project: tools.project
outputParameters:
- type: object
mapping: $.
- name: partially-update-network-peer
description: Partially update the network peer
hints:
readOnly: false
destructive: false
idempotent: true
call: incus-network-peers.networkpeerpatch
with:
networkName: tools.networkName
peerName: tools.peerName
project: tools.project
Peer: tools.Peer
outputParameters:
- type: object
mapping: $.
- name: update-network-peer
description: Update the network peer
hints:
readOnly: false
destructive: false
idempotent: true
call: incus-network-peers.networkpeerput
with:
networkName: tools.networkName
peerName: tools.peerName
project: tools.project
peer: tools.peer
outputParameters:
- type: object
mapping: $.
- name: get-network-peers-2
description: Get the network peers
hints:
readOnly: true
destructive: false
idempotent: true
call: incus-network-peers.networkpeergetrecursion1
with:
networkName: tools.networkName
project: tools.project
filter: tools.filter
outputParameters:
- type: object
mapping: $.