Managed Database for PostgreSQL and MySQL API — Database Instances
Managed Database for PostgreSQL and MySQL API — Database Instances. 17 operations. Lead operation: List Database Instances. Self-contained Naftiko capability covering one Scaleway business surface.
What You Can Do
MCP Tools
list-database-instances
List Database Instances
create-database-instance
Create a Database Instance
get-database-instance
Get a Database Instance
update-database-instance
Update a Database Instance
delete-database-instance
Delete a Database Instance
apply-database-instance-maintenance
Apply Database Instance maintenance
get-tls-certificate-database-instance
Get the TLS certificate of a Database Instance
clone-database-instance
Clone a Database Instance
list-available-logs-database-instance
List available logs of a Database Instance
list-remote-database-instance-logs
List remote Database Instance logs details
deprecated-get-database-instance-metrics
[deprecated] Get Database Instance metrics
prepare-logs-database-instance
Prepare logs of a Database Instance
purge-remote-database-instance-logs
Purge remote Database Instance logs
renew-tls-certificate-database-instance
Renew the TLS certificate of a Database Instance
restart-database-instance
Restart Database Instance
upgrade-database-instance
Upgrade a Database Instance
get-given-logs-database-instance
Get given logs of a Database Instance
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Managed Database for PostgreSQL and MySQL API — Database Instances
description: 'Managed Database for PostgreSQL and MySQL API — Database Instances. 17 operations. Lead operation: List Database
Instances. Self-contained Naftiko capability covering one Scaleway business surface.'
tags:
- Scaleway
- Database Instances
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
SCALEWAY_API_KEY: SCALEWAY_API_KEY
capability:
consumes:
- type: http
namespace: database-database-instances
baseUri: https://api.scaleway.com
description: Managed Database for PostgreSQL and MySQL API — Database Instances business capability. Self-contained, no
shared references.
resources:
- name: rdb-v1-regions-region-instances
path: /rdb/v1/regions/{region}/instances
operations:
- name: listinstances
method: GET
description: List Database Instances
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: tags
in: query
type: array
description: List Database Instances that have a given tag.
- name: name
in: query
type: string
description: Lists Database Instances that match a name pattern.
- name: order_by
in: query
type: string
description: Criteria to use when ordering Database Instance listings.
- name: organization_id
in: query
type: string
description: Please use project_id instead.
- name: project_id
in: query
type: string
description: Project ID to list the Database Instance of.
- name: has_maintenances
in: query
type: boolean
description: Filter to only list instances with a scheduled maintenance.
- name: page
in: query
type: string
- name: page_size
in: query
type: integer
- name: createinstance
method: POST
description: Create a Database Instance
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: rdb-v1-regions-region-instances-instance_id
path: /rdb/v1/regions/{region}/instances/{instance_id}
operations:
- name: getinstance
method: GET
description: Get a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance.
required: true
- name: updateinstance
method: PATCH
description: Update a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance to update.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: deleteinstance
method: DELETE
description: Delete a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance to delete.
required: true
- name: rdb-v1-regions-region-instances-instance_id-apply-maintenance
path: /rdb/v1/regions/{region}/instances/{instance_id}/apply-maintenance
operations:
- name: applyinstancemaintenance
method: POST
description: Apply Database Instance maintenance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want to apply maintenance.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-certificate
path: /rdb/v1/regions/{region}/instances/{instance_id}/certificate
operations:
- name: getinstancecertificate
method: GET
description: Get the TLS certificate of a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance.
required: true
- name: rdb-v1-regions-region-instances-instance_id-clone
path: /rdb/v1/regions/{region}/instances/{instance_id}/clone
operations:
- name: cloneinstance
method: POST
description: Clone a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want to clone.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-logs
path: /rdb/v1/regions/{region}/instances/{instance_id}/logs
operations:
- name: listinstancelogs
method: GET
description: List available logs of a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want logs of.
required: true
- name: order_by
in: query
type: string
description: Criteria to use when ordering Database Instance logs listing.
- name: rdb-v1-regions-region-instances-instance_id-logs-details
path: /rdb/v1/regions/{region}/instances/{instance_id}/logs-details
operations:
- name: listinstancelogsdetails
method: GET
description: List remote Database Instance logs details
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want logs of.
required: true
- name: rdb-v1-regions-region-instances-instance_id-metrics
path: /rdb/v1/regions/{region}/instances/{instance_id}/metrics
operations:
- name: getinstancemetrics
method: GET
description: '[deprecated] Get Database Instance metrics'
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: instance_id
in: path
type: string
description: UUID of the Database Instance.
required: true
- name: start_date
in: query
type: string
description: Start date to gather metrics from. (RFC 3339 format)
- name: end_date
in: query
type: string
description: End date to gather metrics from. (RFC 3339 format)
- name: metric_name
in: query
type: string
description: Name of the metric to gather.
- name: rdb-v1-regions-region-instances-instance_id-prepare-logs
path: /rdb/v1/regions/{region}/instances/{instance_id}/prepare-logs
operations:
- name: prepareinstancelogs
method: POST
description: Prepare logs of a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want logs of.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-purge-logs
path: /rdb/v1/regions/{region}/instances/{instance_id}/purge-logs
operations:
- name: purgeinstancelogs
method: POST
description: Purge remote Database Instance logs
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want logs of.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-renew-certificate
path: /rdb/v1/regions/{region}/instances/{instance_id}/renew-certificate
operations:
- name: renewinstancecertificate
method: POST
description: Renew the TLS certificate of a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want logs of.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-restart
path: /rdb/v1/regions/{region}/instances/{instance_id}/restart
operations:
- name: restartinstance
method: POST
description: Restart Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want to restart.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-instances-instance_id-upgrade
path: /rdb/v1/regions/{region}/instances/{instance_id}/upgrade
operations:
- name: upgradeinstance
method: POST
description: Upgrade a Database Instance
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: instance_id
in: path
type: string
description: UUID of the Database Instance you want to upgrade.
required: true
- name: body
in: body
type: object
description: Request body (JSON).
required: true
- name: rdb-v1-regions-region-logs-instance_log_id
path: /rdb/v1/regions/{region}/logs/{instance_log_id}
operations:
- name: getinstancelog
method: GET
description: Get given logs of a Database Instance
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: instance_log_id
in: path
type: string
description: UUID of the instance_log you want.
required: true
authentication:
type: apikey
key: X-Auth-Token
value: '{{env.SCALEWAY_API_KEY}}'
placement: header
exposes:
- type: rest
namespace: database-database-instances-rest
port: 8080
description: REST adapter for Managed Database for PostgreSQL and MySQL API — Database Instances. One Spectral-compliant
resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/rdb/v1/regions/{region}/instances
name: rdb-v1-regions-region-instances
description: REST surface for rdb-v1-regions-region-instances.
operations:
- method: GET
name: listinstances
description: List Database Instances
call: database-database-instances.listinstances
with:
region: rest.region
tags: rest.tags
name: rest.name
order_by: rest.order_by
organization_id: rest.organization_id
project_id: rest.project_id
has_maintenances: rest.has_maintenances
page: rest.page
page_size: rest.page_size
outputParameters:
- type: object
mapping: $.
- method: POST
name: createinstance
description: Create a Database Instance
call: database-database-instances.createinstance
with:
region: rest.region
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}
name: rdb-v1-regions-region-instances-instance-id
description: REST surface for rdb-v1-regions-region-instances-instance_id.
operations:
- method: GET
name: getinstance
description: Get a Database Instance
call: database-database-instances.getinstance
with:
region: rest.region
instance_id: rest.instance_id
outputParameters:
- type: object
mapping: $.
- method: PATCH
name: updateinstance
description: Update a Database Instance
call: database-database-instances.updateinstance
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- method: DELETE
name: deleteinstance
description: Delete a Database Instance
call: database-database-instances.deleteinstance
with:
region: rest.region
instance_id: rest.instance_id
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/apply-maintenance
name: rdb-v1-regions-region-instances-instance-id-apply-maintenance
description: REST surface for rdb-v1-regions-region-instances-instance_id-apply-maintenance.
operations:
- method: POST
name: applyinstancemaintenance
description: Apply Database Instance maintenance
call: database-database-instances.applyinstancemaintenance
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/certificate
name: rdb-v1-regions-region-instances-instance-id-certificate
description: REST surface for rdb-v1-regions-region-instances-instance_id-certificate.
operations:
- method: GET
name: getinstancecertificate
description: Get the TLS certificate of a Database Instance
call: database-database-instances.getinstancecertificate
with:
region: rest.region
instance_id: rest.instance_id
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/clone
name: rdb-v1-regions-region-instances-instance-id-clone
description: REST surface for rdb-v1-regions-region-instances-instance_id-clone.
operations:
- method: POST
name: cloneinstance
description: Clone a Database Instance
call: database-database-instances.cloneinstance
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/logs
name: rdb-v1-regions-region-instances-instance-id-logs
description: REST surface for rdb-v1-regions-region-instances-instance_id-logs.
operations:
- method: GET
name: listinstancelogs
description: List available logs of a Database Instance
call: database-database-instances.listinstancelogs
with:
region: rest.region
instance_id: rest.instance_id
order_by: rest.order_by
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/logs-details
name: rdb-v1-regions-region-instances-instance-id-logs-details
description: REST surface for rdb-v1-regions-region-instances-instance_id-logs-details.
operations:
- method: GET
name: listinstancelogsdetails
description: List remote Database Instance logs details
call: database-database-instances.listinstancelogsdetails
with:
region: rest.region
instance_id: rest.instance_id
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/metrics
name: rdb-v1-regions-region-instances-instance-id-metrics
description: REST surface for rdb-v1-regions-region-instances-instance_id-metrics.
operations:
- method: GET
name: getinstancemetrics
description: '[deprecated] Get Database Instance metrics'
call: database-database-instances.getinstancemetrics
with:
region: rest.region
instance_id: rest.instance_id
start_date: rest.start_date
end_date: rest.end_date
metric_name: rest.metric_name
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/prepare-logs
name: rdb-v1-regions-region-instances-instance-id-prepare-logs
description: REST surface for rdb-v1-regions-region-instances-instance_id-prepare-logs.
operations:
- method: POST
name: prepareinstancelogs
description: Prepare logs of a Database Instance
call: database-database-instances.prepareinstancelogs
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/purge-logs
name: rdb-v1-regions-region-instances-instance-id-purge-logs
description: REST surface for rdb-v1-regions-region-instances-instance_id-purge-logs.
operations:
- method: POST
name: purgeinstancelogs
description: Purge remote Database Instance logs
call: database-database-instances.purgeinstancelogs
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/renew-certificate
name: rdb-v1-regions-region-instances-instance-id-renew-certificate
description: REST surface for rdb-v1-regions-region-instances-instance_id-renew-certificate.
operations:
- method: POST
name: renewinstancecertificate
description: Renew the TLS certificate of a Database Instance
call: database-database-instances.renewinstancecertificate
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/restart
name: rdb-v1-regions-region-instances-instance-id-restart
description: REST surface for rdb-v1-regions-region-instances-instance_id-restart.
operations:
- method: POST
name: restartinstance
description: Restart Database Instance
call: database-database-instances.restartinstance
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/instances/{instance-id}/upgrade
name: rdb-v1-regions-region-instances-instance-id-upgrade
description: REST surface for rdb-v1-regions-region-instances-instance_id-upgrade.
operations:
- method: POST
name: upgradeinstance
description: Upgrade a Database Instance
call: database-database-instances.upgradeinstance
with:
region: rest.region
instance_id: rest.instance_id
body: rest.body
outputParameters:
- type: object
mapping: $.
- path: /v1/rdb/v1/regions/{region}/logs/{instance-log-id}
name: rdb-v1-regions-region-logs-instance-log-id
description: REST surface for rdb-v1-regions-region-logs-instance_log_id.
operations:
- method: GET
name: getinstancelog
description: Get given logs of a Database Instance
call: database-database-instances.getinstancelog
with:
region: rest.region
instance_log_id: rest.instance_log_id
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: database-database-instances-mcp
port: 9090
transport: http
description: MCP adapter for Managed Database for PostgreSQL and MySQL API — Database Instances. One tool per consumed
operation, routed inline through this capability's consumes block.
tools:
- name: list-database-instances
description: List Database Instances
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.listinstances
with:
region: tools.region
tags: tools.tags
name: tools.name
order_by: tools.order_by
organization_id: tools.organization_id
project_id: tools.project_id
has_maintenances: tools.has_maintenances
page: tools.page
page_size: tools.page_size
outputParameters:
- type: object
mapping: $.
- name: create-database-instance
description: Create a Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.createinstance
with:
region: tools.region
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-database-instance
description: Get a Database Instance
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.getinstance
with:
region: tools.region
instance_id: tools.instance_id
outputParameters:
- type: object
mapping: $.
- name: update-database-instance
description: Update a Database Instance
hints:
readOnly: false
destructive: false
idempotent: true
call: database-database-instances.updateinstance
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: delete-database-instance
description: Delete a Database Instance
hints:
readOnly: false
destructive: true
idempotent: true
call: database-database-instances.deleteinstance
with:
region: tools.region
instance_id: tools.instance_id
outputParameters:
- type: object
mapping: $.
- name: apply-database-instance-maintenance
description: Apply Database Instance maintenance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.applyinstancemaintenance
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-tls-certificate-database-instance
description: Get the TLS certificate of a Database Instance
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.getinstancecertificate
with:
region: tools.region
instance_id: tools.instance_id
outputParameters:
- type: object
mapping: $.
- name: clone-database-instance
description: Clone a Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.cloneinstance
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: list-available-logs-database-instance
description: List available logs of a Database Instance
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.listinstancelogs
with:
region: tools.region
instance_id: tools.instance_id
order_by: tools.order_by
outputParameters:
- type: object
mapping: $.
- name: list-remote-database-instance-logs
description: List remote Database Instance logs details
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.listinstancelogsdetails
with:
region: tools.region
instance_id: tools.instance_id
outputParameters:
- type: object
mapping: $.
- name: deprecated-get-database-instance-metrics
description: '[deprecated] Get Database Instance metrics'
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.getinstancemetrics
with:
region: tools.region
instance_id: tools.instance_id
start_date: tools.start_date
end_date: tools.end_date
metric_name: tools.metric_name
outputParameters:
- type: object
mapping: $.
- name: prepare-logs-database-instance
description: Prepare logs of a Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.prepareinstancelogs
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: purge-remote-database-instance-logs
description: Purge remote Database Instance logs
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.purgeinstancelogs
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: renew-tls-certificate-database-instance
description: Renew the TLS certificate of a Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.renewinstancecertificate
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: restart-database-instance
description: Restart Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.restartinstance
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: upgrade-database-instance
description: Upgrade a Database Instance
hints:
readOnly: false
destructive: false
idempotent: false
call: database-database-instances.upgradeinstance
with:
region: tools.region
instance_id: tools.instance_id
body: tools.body
outputParameters:
- type: object
mapping: $.
- name: get-given-logs-database-instance
description: Get given logs of a Database Instance
hints:
readOnly: true
destructive: false
idempotent: true
call: database-database-instances.getinstancelog
with:
region: tools.region
instance_log_id: tools.instance_log_id
outputParameters:
- type: object
mapping: $.