Scaleway · Capability
VPC API — Private Networks
VPC API — Private Networks. 6 operations. Lead operation: List Private Networks. Self-contained Naftiko capability covering one Scaleway business surface.
What You Can Do
GET
Listprivatenetworks
— List Private Networks
/v1/vpc/v2/regions/{region}/private-networks
POST
Createprivatenetwork
— Create a Private Network
/v1/vpc/v2/regions/{region}/private-networks
GET
Getprivatenetwork
— Get a Private Network
/v1/vpc/v2/regions/{region}/private-networks/{private-network-id}
PATCH
Updateprivatenetwork
— Update Private Network
/v1/vpc/v2/regions/{region}/private-networks/{private-network-id}
DELETE
Deleteprivatenetwork
— Delete a Private Network
/v1/vpc/v2/regions/{region}/private-networks/{private-network-id}
POST
Enabledhcp
— Enable DHCP on a Private Network
/v1/vpc/v2/regions/{region}/private-networks/{private-network-id}/enable-dhcp
MCP Tools
list-private-networks
List Private Networks
read-only
idempotent
create-private-network
Create a Private Network
get-private-network
Get a Private Network
read-only
idempotent
update-private-network
Update Private Network
idempotent
delete-private-network
Delete a Private Network
idempotent
enable-dhcp-private-network
Enable DHCP on a Private Network
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: VPC API — Private Networks
description: 'VPC API — Private Networks. 6 operations. Lead operation: List Private Networks. Self-contained Naftiko capability
covering one Scaleway business surface.'
tags:
- Scaleway
- Private Networks
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SCALEWAY_API_KEY: SCALEWAY_API_KEY
capability:
consumes:
- type: http
namespace: vpc-private-networks
baseUri: https://api.scaleway.com
description: VPC API — Private Networks business capability. Self-contained, no shared references.
resources:
- name: vpc-v2-regions-region-private-networks
path: /vpc/v2/regions/{region}/private-networks
operations:
- name: listprivatenetworks
method: GET
description: List Private Networks
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: order_by
in: query
type: string
description: Sort order of the returned Private Networks.
- name: page
in: query
type: integer
description: Page number to return, from the paginated results.
- name: page_size
in: query
type: integer
description: Maximum number of Private Networks to return per page.
- name: name
in: query
type: string
description: Name to filter for. Only Private Networks with names containing this string will be returned.
- name: tags
in: query
type: array
description: Tags to filter for. Only Private Networks with one or more matching tags will be returned.
- name: organization_id
in: query
type: string
description: Organization ID to filter for. Only Private Networks belonging to this Organization will be returned.
(UUID format)
- name: project_id
in: query
type: string
description: Project ID to filter for. Only Private Networks belonging to this Project will be returned. (UUID format)
- name: private_network_ids
in: query
type: array
description: Private Network IDs to filter for. Only Private Networks with one of these IDs will be returned.
- name: vpc_id
in: query
type: string
description: VPC ID to filter for. Only Private Networks belonging to this VPC will be returned. (UUID format)
- name: dhcp_enabled
in: query
type: boolean
description: DHCP status to filter for. When true, only Private Networks with managed DHCP enabled will be returned.
- name: createprivatenetwork
method: POST
description: Create a Private Network
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: vpc-v2-regions-region-private-networks-private_network_id
path: /vpc/v2/regions/{region}/private-networks/{private_network_id}
operations:
- name: getprivatenetwork
method: GET
description: Get a Private Network
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: private_network_id
in: path
type: string
description: Private Network ID. (UUID format)
required: true
- name: updateprivatenetwork
method: PATCH
description: Update Private Network
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: private_network_id
in: path
type: string
description: Private Network ID. (UUID format)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteprivatenetwork
method: DELETE
description: Delete a Private Network
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: private_network_id
in: path
type: string
description: Private Network ID. (UUID format)
required: true
- name: vpc-v2-regions-region-private-networks-private_network_id-enable-dhcp
path: /vpc/v2/regions/{region}/private-networks/{private_network_id}/enable-dhcp
operations:
- name: enabledhcp
method: POST
description: Enable DHCP on a Private Network
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: region
in: path
type: string
description: The region you want to target
required: true
- name: private_network_id
in: path
type: string
description: Private Network ID. (UUID format)
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
authentication:
type: apikey
key: X-Auth-Token
value: '{{env.SCALEWAY_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: vpc-private-networks-rest
port: 8080
description: REST adapter for VPC API — Private Networks. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- path: /v1/vpc/v2/regions/{region}/private-networks
name: vpc-v2-regions-region-private-networks
description: REST surface for vpc-v2-regions-region-private-networks.
operations:
- method: GET
name: listprivatenetworks
description: List Private Networks
call: vpc-private-networks.listprivatenetworks
with:
region: rest.region
order_by: rest.order_by
page: rest.page
page_size: rest.page_size
name: rest.name
tags: rest.tags
organization_id: rest.organization_id
project_id: rest.project_id
private_network_ids: rest.private_network_ids
vpc_id: rest.vpc_id
dhcp_enabled: rest.dhcp_enabled
outputParameters:
- type: object
mapping: $.
- method: POST
name: createprivatenetwork
description: Create a Private Network
call: vpc-private-networks.createprivatenetwork
with:
region: rest.region
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/vpc/v2/regions/{region}/private-networks/{private-network-id}
name: vpc-v2-regions-region-private-networks-private-network-id
description: REST surface for vpc-v2-regions-region-private-networks-private_network_id.
operations:
- method: GET
name: getprivatenetwork
description: Get a Private Network
call: vpc-private-networks.getprivatenetwork
with:
region: rest.region
private_network_id: rest.private_network_id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: updateprivatenetwork
description: Update Private Network
call: vpc-private-networks.updateprivatenetwork
with:
region: rest.region
private_network_id: rest.private_network_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteprivatenetwork
description: Delete a Private Network
call: vpc-private-networks.deleteprivatenetwork
with:
region: rest.region
private_network_id: rest.private_network_id
outputParameters:
- type: object
mapping: $.
- path: /v1/vpc/v2/regions/{region}/private-networks/{private-network-id}/enable-dhcp
name: vpc-v2-regions-region-private-networks-private-network-id-enable-dhcp
description: REST surface for vpc-v2-regions-region-private-networks-private_network_id-enable-dhcp.
operations:
- method: POST
name: enabledhcp
description: Enable DHCP on a Private Network
call: vpc-private-networks.enabledhcp
with:
region: rest.region
private_network_id: rest.private_network_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: vpc-private-networks-mcp
port: 9090
transport: http
description: MCP adapter for VPC API — Private Networks. One tool per consumed operation, routed inline through this capability's
consumes block.
tools:
- name: list-private-networks
description: List Private Networks
hints:
readOnly: true
destructive: false
idempotent: true
call: vpc-private-networks.listprivatenetworks
with:
region: tools.region
order_by: tools.order_by
page: tools.page
page_size: tools.page_size
name: tools.name
tags: tools.tags
organization_id: tools.organization_id
project_id: tools.project_id
private_network_ids: tools.private_network_ids
vpc_id: tools.vpc_id
dhcp_enabled: tools.dhcp_enabled
outputParameters:
- type: object
mapping: $.
- name: create-private-network
description: Create a Private Network
hints:
readOnly: false
destructive: false
idempotent: false
call: vpc-private-networks.createprivatenetwork
with:
region: tools.region
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-private-network
description: Get a Private Network
hints:
readOnly: true
destructive: false
idempotent: true
call: vpc-private-networks.getprivatenetwork
with:
region: tools.region
private_network_id: tools.private_network_id
outputParameters:
- type: object
mapping: $.
- name: update-private-network
description: Update Private Network
hints:
readOnly: false
destructive: false
idempotent: true
call: vpc-private-networks.updateprivatenetwork
with:
region: tools.region
private_network_id: tools.private_network_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-private-network
description: Delete a Private Network
hints:
readOnly: false
destructive: true
idempotent: true
call: vpc-private-networks.deleteprivatenetwork
with:
region: tools.region
private_network_id: tools.private_network_id
outputParameters:
- type: object
mapping: $.
- name: enable-dhcp-private-network
description: Enable DHCP on a Private Network
hints:
readOnly: false
destructive: false
idempotent: false
call: vpc-private-networks.enabledhcp
with:
region: tools.region
private_network_id: tools.private_network_id
body: tools.body
outputParameters:
- type: object
mapping: $.