Couchbase · Capability

Couchbase Sync Gateway Admin REST API — Database Management

Couchbase Sync Gateway Admin REST API — Database Management. 11 operations. Lead operation: Compact database. Self-contained Naftiko capability covering one Couchbase business surface.

Run with Naftiko CouchbaseDatabase Management

What You Can Do

POST
Compactdatabase — Compact database
/v1/{db}/compact
GET
Getdatabaseconfig — Get database configuration
/v1/{db}/config
PUT
Updatedatabaseconfig — Update database configuration
/v1/{db}/config
POST
Createdatabase — Create a database
/v1/{db}/config
DELETE
Deletedatabase — Delete a database
/v1/{db}/config
GET
Getsyncfunction — Get sync function
/v1/{db}/config/sync
PUT
Updatesyncfunction — Update sync function
/v1/{db}/config/sync
POST
Takedatabaseoffline — Take database offline
/v1/{db}/offline
POST
Bringdatabaseonline — Bring database online
/v1/{db}/online
POST
Purgedocuments — Purge documents
/v1/{db}/purge
POST
Resyncdatabase — Resync database
/v1/{db}/resync

MCP Tools

compact-database

Compact database

get-database-configuration

Get database configuration

read-only idempotent
update-database-configuration

Update database configuration

idempotent
create-database

Create a database

delete-database

Delete a database

idempotent
get-sync-function

Get sync function

read-only idempotent
update-sync-function

Update sync function

idempotent
take-database-offline

Take database offline

bring-database-online

Bring database online

purge-documents

Purge documents

resync-database

Resync database

Capability Spec

sync-gateway-admin-rest-database-management.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Couchbase Sync Gateway Admin REST API — Database Management
  description: 'Couchbase Sync Gateway Admin REST API — Database Management. 11 operations. Lead operation: Compact database.
    Self-contained Naftiko capability covering one Couchbase business surface.'
  tags:
  - Couchbase
  - Database Management
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    COUCHBASE_API_KEY: COUCHBASE_API_KEY
capability:
  consumes:
  - type: http
    namespace: sync-gateway-admin-rest-database-management
    baseUri: https://localhost:4985
    description: Couchbase Sync Gateway Admin REST API — Database Management business capability. Self-contained, no shared
      references.
    resources:
    - name: db-_compact
      path: /{db}/_compact
      operations:
      - name: compactdatabase
        method: POST
        description: Compact database
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: db-_config
      path: /{db}/_config
      operations:
      - name: getdatabaseconfig
        method: GET
        description: Get database configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatedatabaseconfig
        method: PUT
        description: Update database configuration
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: createdatabase
        method: POST
        description: Create a database
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deletedatabase
        method: DELETE
        description: Delete a database
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: db-_config-sync
      path: /{db}/_config/sync
      operations:
      - name: getsyncfunction
        method: GET
        description: Get sync function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatesyncfunction
        method: PUT
        description: Update sync function
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: db-_offline
      path: /{db}/_offline
      operations:
      - name: takedatabaseoffline
        method: POST
        description: Take database offline
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: db-_online
      path: /{db}/_online
      operations:
      - name: bringdatabaseonline
        method: POST
        description: Bring database online
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: db-_purge
      path: /{db}/_purge
      operations:
      - name: purgedocuments
        method: POST
        description: Purge documents
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: db-_resync
      path: /{db}/_resync
      operations:
      - name: resyncdatabase
        method: POST
        description: Resync database
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    authentication:
      type: basic
      username: '{{env.COUCHBASE_USER}}'
      password: '{{env.COUCHBASE_PASS}}'
  exposes:
  - type: rest
    namespace: sync-gateway-admin-rest-database-management-rest
    port: 8080
    description: REST adapter for Couchbase Sync Gateway Admin REST API — Database Management. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/{db}/compact
      name: db-compact
      description: REST surface for db-_compact.
      operations:
      - method: POST
        name: compactdatabase
        description: Compact database
        call: sync-gateway-admin-rest-database-management.compactdatabase
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/config
      name: db-config
      description: REST surface for db-_config.
      operations:
      - method: GET
        name: getdatabaseconfig
        description: Get database configuration
        call: sync-gateway-admin-rest-database-management.getdatabaseconfig
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatedatabaseconfig
        description: Update database configuration
        call: sync-gateway-admin-rest-database-management.updatedatabaseconfig
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createdatabase
        description: Create a database
        call: sync-gateway-admin-rest-database-management.createdatabase
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deletedatabase
        description: Delete a database
        call: sync-gateway-admin-rest-database-management.deletedatabase
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/config/sync
      name: db-config-sync
      description: REST surface for db-_config-sync.
      operations:
      - method: GET
        name: getsyncfunction
        description: Get sync function
        call: sync-gateway-admin-rest-database-management.getsyncfunction
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatesyncfunction
        description: Update sync function
        call: sync-gateway-admin-rest-database-management.updatesyncfunction
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/offline
      name: db-offline
      description: REST surface for db-_offline.
      operations:
      - method: POST
        name: takedatabaseoffline
        description: Take database offline
        call: sync-gateway-admin-rest-database-management.takedatabaseoffline
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/online
      name: db-online
      description: REST surface for db-_online.
      operations:
      - method: POST
        name: bringdatabaseonline
        description: Bring database online
        call: sync-gateway-admin-rest-database-management.bringdatabaseonline
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/purge
      name: db-purge
      description: REST surface for db-_purge.
      operations:
      - method: POST
        name: purgedocuments
        description: Purge documents
        call: sync-gateway-admin-rest-database-management.purgedocuments
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/{db}/resync
      name: db-resync
      description: REST surface for db-_resync.
      operations:
      - method: POST
        name: resyncdatabase
        description: Resync database
        call: sync-gateway-admin-rest-database-management.resyncdatabase
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: sync-gateway-admin-rest-database-management-mcp
    port: 9090
    transport: http
    description: MCP adapter for Couchbase Sync Gateway Admin REST API — Database Management. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: compact-database
      description: Compact database
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.compactdatabase
      outputParameters:
      - type: object
        mapping: $.
    - name: get-database-configuration
      description: Get database configuration
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sync-gateway-admin-rest-database-management.getdatabaseconfig
      outputParameters:
      - type: object
        mapping: $.
    - name: update-database-configuration
      description: Update database configuration
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sync-gateway-admin-rest-database-management.updatedatabaseconfig
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: create-database
      description: Create a database
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.createdatabase
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: delete-database
      description: Delete a database
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: sync-gateway-admin-rest-database-management.deletedatabase
      outputParameters:
      - type: object
        mapping: $.
    - name: get-sync-function
      description: Get sync function
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: sync-gateway-admin-rest-database-management.getsyncfunction
      outputParameters:
      - type: object
        mapping: $.
    - name: update-sync-function
      description: Update sync function
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: sync-gateway-admin-rest-database-management.updatesyncfunction
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: take-database-offline
      description: Take database offline
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.takedatabaseoffline
      outputParameters:
      - type: object
        mapping: $.
    - name: bring-database-online
      description: Bring database online
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.bringdatabaseonline
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: purge-documents
      description: Purge documents
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.purgedocuments
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: resync-database
      description: Resync database
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: sync-gateway-admin-rest-database-management.resyncdatabase
      outputParameters:
      - type: object
        mapping: $.