Jupyter Notebook · Capability

Jupyter Notebook REST API — Kernels

Jupyter Notebook REST API — Kernels. 6 operations. Lead operation: Jupyter Notebook List running kernels. Self-contained Naftiko capability covering one Jupyter Notebook business surface.

Run with Naftiko Jupyter NotebookKernels

What You Can Do

GET
Listkernels — Jupyter Notebook List running kernels
/v1/api/kernels
POST
Startkernel — Jupyter Notebook Start a kernel
/v1/api/kernels
GET
Getkernel — Jupyter Notebook Get kernel information
/v1/api/kernels/{kernel-id}
DELETE
Shutdownkernel — Jupyter Notebook Shut down a kernel
/v1/api/kernels/{kernel-id}
POST
Interruptkernel — Jupyter Notebook Interrupt a kernel
/v1/api/kernels/{kernel-id}/interrupt
POST
Restartkernel — Jupyter Notebook Restart a kernel
/v1/api/kernels/{kernel-id}/restart

MCP Tools

jupyter-notebook-list-running-kernels

Jupyter Notebook List running kernels

read-only idempotent
jupyter-notebook-start-kernel

Jupyter Notebook Start a kernel

jupyter-notebook-get-kernel-information

Jupyter Notebook Get kernel information

read-only idempotent
jupyter-notebook-shut-down-kernel

Jupyter Notebook Shut down a kernel

idempotent
jupyter-notebook-interrupt-kernel

Jupyter Notebook Interrupt a kernel

jupyter-notebook-restart-kernel

Jupyter Notebook Restart a kernel

Capability Spec

rest-kernels.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Jupyter Notebook REST API — Kernels
  description: 'Jupyter Notebook REST API — Kernels. 6 operations. Lead operation: Jupyter Notebook List running kernels.
    Self-contained Naftiko capability covering one Jupyter Notebook business surface.'
  tags:
  - Jupyter Notebook
  - Kernels
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    JUPYTER_NOTEBOOK_API_KEY: JUPYTER_NOTEBOOK_API_KEY
capability:
  consumes:
  - type: http
    namespace: rest-kernels
    baseUri: http://localhost:8888/api
    description: Jupyter Notebook REST API — Kernels business capability. Self-contained, no shared references.
    resources:
    - name: api-kernels
      path: /api/kernels
      operations:
      - name: listkernels
        method: GET
        description: Jupyter Notebook List running kernels
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: startkernel
        method: POST
        description: Jupyter Notebook Start a kernel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: false
    - name: api-kernels-kernel_id
      path: /api/kernels/{kernel_id}
      operations:
      - name: getkernel
        method: GET
        description: Jupyter Notebook Get kernel information
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kernel_id
          in: path
          type: string
          description: Unique identifier for the kernel.
          required: true
      - name: shutdownkernel
        method: DELETE
        description: Jupyter Notebook Shut down a kernel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kernel_id
          in: path
          type: string
          description: Unique identifier for the kernel.
          required: true
    - name: api-kernels-kernel_id-interrupt
      path: /api/kernels/{kernel_id}/interrupt
      operations:
      - name: interruptkernel
        method: POST
        description: Jupyter Notebook Interrupt a kernel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kernel_id
          in: path
          type: string
          description: Unique identifier for the kernel.
          required: true
    - name: api-kernels-kernel_id-restart
      path: /api/kernels/{kernel_id}/restart
      operations:
      - name: restartkernel
        method: POST
        description: Jupyter Notebook Restart a kernel
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: kernel_id
          in: path
          type: string
          description: Unique identifier for the kernel.
          required: true
    authentication:
      type: apikey
      key: token
      value: '{{env.JUPYTER_NOTEBOOK_API_KEY}}'
      placement: query
  exposes:
  - type: rest
    namespace: rest-kernels-rest
    port: 8080
    description: REST adapter for Jupyter Notebook REST API — Kernels. One Spectral-compliant resource per consumed operation,
      prefixed with /v1.
    resources:
    - path: /v1/api/kernels
      name: api-kernels
      description: REST surface for api-kernels.
      operations:
      - method: GET
        name: listkernels
        description: Jupyter Notebook List running kernels
        call: rest-kernels.listkernels
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: startkernel
        description: Jupyter Notebook Start a kernel
        call: rest-kernels.startkernel
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/kernels/{kernel-id}
      name: api-kernels-kernel-id
      description: REST surface for api-kernels-kernel_id.
      operations:
      - method: GET
        name: getkernel
        description: Jupyter Notebook Get kernel information
        call: rest-kernels.getkernel
        with:
          kernel_id: rest.kernel_id
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: shutdownkernel
        description: Jupyter Notebook Shut down a kernel
        call: rest-kernels.shutdownkernel
        with:
          kernel_id: rest.kernel_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/kernels/{kernel-id}/interrupt
      name: api-kernels-kernel-id-interrupt
      description: REST surface for api-kernels-kernel_id-interrupt.
      operations:
      - method: POST
        name: interruptkernel
        description: Jupyter Notebook Interrupt a kernel
        call: rest-kernels.interruptkernel
        with:
          kernel_id: rest.kernel_id
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/api/kernels/{kernel-id}/restart
      name: api-kernels-kernel-id-restart
      description: REST surface for api-kernels-kernel_id-restart.
      operations:
      - method: POST
        name: restartkernel
        description: Jupyter Notebook Restart a kernel
        call: rest-kernels.restartkernel
        with:
          kernel_id: rest.kernel_id
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: rest-kernels-mcp
    port: 9090
    transport: http
    description: MCP adapter for Jupyter Notebook REST API — Kernels. One tool per consumed operation, routed inline through
      this capability's consumes block.
    tools:
    - name: jupyter-notebook-list-running-kernels
      description: Jupyter Notebook List running kernels
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-kernels.listkernels
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyter-notebook-start-kernel
      description: Jupyter Notebook Start a kernel
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-kernels.startkernel
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyter-notebook-get-kernel-information
      description: Jupyter Notebook Get kernel information
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: rest-kernels.getkernel
      with:
        kernel_id: tools.kernel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyter-notebook-shut-down-kernel
      description: Jupyter Notebook Shut down a kernel
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: rest-kernels.shutdownkernel
      with:
        kernel_id: tools.kernel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyter-notebook-interrupt-kernel
      description: Jupyter Notebook Interrupt a kernel
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-kernels.interruptkernel
      with:
        kernel_id: tools.kernel_id
      outputParameters:
      - type: object
        mapping: $.
    - name: jupyter-notebook-restart-kernel
      description: Jupyter Notebook Restart a kernel
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: rest-kernels.restartkernel
      with:
        kernel_id: tools.kernel_id
      outputParameters:
      - type: object
        mapping: $.