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: $.