JupyterLab · Capability

JupyterLab Server REST API — Settings

JupyterLab Server REST API — Settings. 3 operations. Lead operation: JupyterLab List all settings. Self-contained Naftiko capability covering one Jupyterlab business surface.

Run with Naftiko JupyterlabSettings

What You Can Do

GET
Listsettings — JupyterLab List all settings
/v1/settings
GET
Getsetting — JupyterLab Get setting
/v1/settings/{schema-name}
PUT
Updatesetting — JupyterLab Update setting
/v1/settings/{schema-name}

MCP Tools

jupyterlab-list-all-settings

JupyterLab List all settings

read-only idempotent
jupyterlab-get-setting

JupyterLab Get setting

read-only idempotent
jupyterlab-update-setting

JupyterLab Update setting

idempotent

Capability Spec

server-rest-settings.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: JupyterLab Server REST API — Settings
  description: 'JupyterLab Server REST API — Settings. 3 operations. Lead operation: JupyterLab List all settings. Self-contained
    Naftiko capability covering one Jupyterlab business surface.'
  tags:
  - Jupyterlab
  - Settings
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    JUPYTERLAB_API_KEY: JUPYTERLAB_API_KEY
capability:
  consumes:
  - type: http
    namespace: server-rest-settings
    baseUri: http://localhost:8888/lab/api
    description: JupyterLab Server REST API — Settings business capability. Self-contained, no shared references.
    resources:
    - name: settings
      path: /settings
      operations:
      - name: listsettings
        method: GET
        description: JupyterLab List all settings
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: settings-schema_name
      path: /settings/{schema_name}
      operations:
      - name: getsetting
        method: GET
        description: JupyterLab Get setting
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: schema_name
          in: path
          type: string
          description: Plugin schema identifier (for example @jupyterlab/apputils-extension:themes).
          required: true
      - name: updatesetting
        method: PUT
        description: JupyterLab Update setting
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: schema_name
          in: path
          type: string
          required: true
    authentication:
      type: apikey
      key: Authorization
      value: '{{env.JUPYTERLAB_API_KEY}}'
      placement: header
  exposes:
  - type: rest
    namespace: server-rest-settings-rest
    port: 8080
    description: REST adapter for JupyterLab Server REST API — Settings. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/settings
      name: settings
      description: REST surface for settings.
      operations:
      - method: GET
        name: listsettings
        description: JupyterLab List all settings
        call: server-rest-settings.listsettings
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/settings/{schema-name}
      name: settings-schema-name
      description: REST surface for settings-schema_name.
      operations:
      - method: GET
        name: getsetting
        description: JupyterLab Get setting
        call: server-rest-settings.getsetting
        with:
          schema_name: rest.schema_name
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatesetting
        description: JupyterLab Update setting
        call: server-rest-settings.updatesetting
        with:
          schema_name: rest.schema_name
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: server-rest-settings-mcp
    port: 9090
    transport: http
    description: MCP adapter for JupyterLab Server REST API — Settings. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: jupyterlab-list-all-settings
      description: JupyterLab List all settings
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: server-rest-settings.listsettings
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyterlab-get-setting
      description: JupyterLab Get setting
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: server-rest-settings.getsetting
      with:
        schema_name: tools.schema_name
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyterlab-update-setting
      description: JupyterLab Update setting
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: server-rest-settings.updatesetting
      with:
        schema_name: tools.schema_name
      outputParameters:
      - type: object
        mapping: $.