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