naftiko: 1.0.0-alpha2 info: label: Jupyter Server REST API — Terminals description: 'Jupyter Server REST API — Terminals. 4 operations. Lead operation: Jupyter Server List terminals. Self-contained Naftiko capability covering one Jupyter Server business surface.' tags: - Jupyter Server - Terminals created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: JUPYTER_SERVER_API_KEY: JUPYTER_SERVER_API_KEY capability: consumes: - type: http namespace: rest-terminals baseUri: http://localhost:8888/api description: Jupyter Server REST API — Terminals business capability. Self-contained, no shared references. resources: - name: terminals path: /terminals operations: - name: listterminals method: GET description: Jupyter Server List terminals outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createterminal method: POST description: Jupyter Server Create terminal outputRawFormat: json outputParameters: - name: result type: object value: $. - name: terminals-terminal_id path: /terminals/{terminal_id} operations: - name: getterminal method: GET description: Jupyter Server Get terminal outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: terminal_id in: path type: string required: true - name: deleteterminal method: DELETE description: Jupyter Server Delete terminal outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: terminal_id in: path type: string required: true authentication: type: apikey key: Authorization value: '{{env.JUPYTER_SERVER_API_KEY}}' placement: header exposes: - type: rest namespace: rest-terminals-rest port: 8080 description: REST adapter for Jupyter Server REST API — Terminals. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/terminals name: terminals description: REST surface for terminals. operations: - method: GET name: listterminals description: Jupyter Server List terminals call: rest-terminals.listterminals outputParameters: - type: object mapping: $. - method: POST name: createterminal description: Jupyter Server Create terminal call: rest-terminals.createterminal outputParameters: - type: object mapping: $. - path: /v1/terminals/{terminal-id} name: terminals-terminal-id description: REST surface for terminals-terminal_id. operations: - method: GET name: getterminal description: Jupyter Server Get terminal call: rest-terminals.getterminal with: terminal_id: rest.terminal_id outputParameters: - type: object mapping: $. - method: DELETE name: deleteterminal description: Jupyter Server Delete terminal call: rest-terminals.deleteterminal with: terminal_id: rest.terminal_id outputParameters: - type: object mapping: $. - type: mcp namespace: rest-terminals-mcp port: 9090 transport: http description: MCP adapter for Jupyter Server REST API — Terminals. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: jupyter-server-list-terminals description: Jupyter Server List terminals hints: readOnly: true destructive: false idempotent: true call: rest-terminals.listterminals outputParameters: - type: object mapping: $. - name: jupyter-server-create-terminal description: Jupyter Server Create terminal hints: readOnly: false destructive: false idempotent: false call: rest-terminals.createterminal outputParameters: - type: object mapping: $. - name: jupyter-server-get-terminal description: Jupyter Server Get terminal hints: readOnly: true destructive: false idempotent: true call: rest-terminals.getterminal with: terminal_id: tools.terminal_id outputParameters: - type: object mapping: $. - name: jupyter-server-delete-terminal description: Jupyter Server Delete terminal hints: readOnly: false destructive: true idempotent: true call: rest-terminals.deleteterminal with: terminal_id: tools.terminal_id outputParameters: - type: object mapping: $.