naftiko: 1.0.0-alpha2 info: label: Jupyter Notebook Server REST API — Sessions description: 'Jupyter Notebook Server REST API — Sessions. 5 operations. Lead operation: List active sessions. Self-contained Naftiko capability covering one Jupyter Notebooks business surface.' tags: - Jupyter Notebooks - Sessions created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: JUPYTER_NOTEBOOKS_API_KEY: JUPYTER_NOTEBOOKS_API_KEY capability: consumes: - type: http namespace: jupyter-notebooks-sessions baseUri: http://localhost:8888/api description: Jupyter Notebook Server REST API — Sessions business capability. Self-contained, no shared references. resources: - name: sessions path: /sessions operations: - name: listsessions method: GET description: List active sessions outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createsession method: POST description: Create a new session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: sessions-session_id path: /sessions/{session_id} operations: - name: getsession method: GET description: Get a session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updatesession method: PATCH description: Update a session outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletesession method: DELETE description: Delete a session outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.JUPYTER_NOTEBOOKS_API_KEY}}' exposes: - type: rest namespace: jupyter-notebooks-sessions-rest port: 8080 description: REST adapter for Jupyter Notebook Server REST API — Sessions. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/sessions name: sessions description: REST surface for sessions. operations: - method: GET name: listsessions description: List active sessions call: jupyter-notebooks-sessions.listsessions outputParameters: - type: object mapping: $. - method: POST name: createsession description: Create a new session call: jupyter-notebooks-sessions.createsession outputParameters: - type: object mapping: $. - path: /v1/sessions/{session-id} name: sessions-session-id description: REST surface for sessions-session_id. operations: - method: GET name: getsession description: Get a session call: jupyter-notebooks-sessions.getsession outputParameters: - type: object mapping: $. - method: PATCH name: updatesession description: Update a session call: jupyter-notebooks-sessions.updatesession outputParameters: - type: object mapping: $. - method: DELETE name: deletesession description: Delete a session call: jupyter-notebooks-sessions.deletesession outputParameters: - type: object mapping: $. - type: mcp namespace: jupyter-notebooks-sessions-mcp port: 9090 transport: http description: MCP adapter for Jupyter Notebook Server REST API — Sessions. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-active-sessions description: List active sessions hints: readOnly: true destructive: false idempotent: true call: jupyter-notebooks-sessions.listsessions outputParameters: - type: object mapping: $. - name: create-new-session description: Create a new session hints: readOnly: false destructive: false idempotent: false call: jupyter-notebooks-sessions.createsession outputParameters: - type: object mapping: $. - name: get-session description: Get a session hints: readOnly: true destructive: false idempotent: true call: jupyter-notebooks-sessions.getsession outputParameters: - type: object mapping: $. - name: update-session description: Update a session hints: readOnly: false destructive: false idempotent: true call: jupyter-notebooks-sessions.updatesession outputParameters: - type: object mapping: $. - name: delete-session description: Delete a session hints: readOnly: false destructive: true idempotent: true call: jupyter-notebooks-sessions.deletesession outputParameters: - type: object mapping: $.