naftiko: 1.0.0-alpha2 info: label: Snowflake Notebook API — notebook description: 'Snowflake Notebook API — notebook. 8 operations. Lead operation: List Notebooks. Self-contained Naftiko capability covering one Snowflake business surface.' tags: - Snowflake - notebook created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SNOWFLAKE_API_KEY: SNOWFLAKE_API_KEY capability: consumes: - type: http namespace: notebook-notebook baseUri: https://org-account.snowflakecomputing.com description: Snowflake Notebook API — notebook business capability. Self-contained, no shared references. resources: - name: api-v2-databases-database-schemas-schema-notebooks path: /api/v2/databases/{database}/schemas/{schema}/notebooks operations: - name: listnotebooks method: GET description: List Notebooks outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createnotebook method: POST description: Create a Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: api-v2-databases-database-schemas-schema-notebooks-name path: /api/v2/databases/{database}/schemas/{schema}/notebooks/{name} operations: - name: fetchnotebook method: GET description: Fetch a Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletenotebook method: DELETE description: Delete a Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v2-databases-database-schemas-schema-notebooks-name}:add-live-version path: /api/v2/databases/{database}/schemas/{schema}/notebooks/{name}:add-live-version operations: - name: addliveversionnotebook method: POST description: Adds a Live Version to the Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: fromLast in: query type: boolean description: Sets the LIVE version to the LAST version of the notebook - name: comment in: query type: string description: Sets a comment for the notebook or version of the notebook - name: api-v2-databases-database-schemas-schema-notebooks-name}:commit path: /api/v2/databases/{database}/schemas/{schema}/notebooks/{name}:commit operations: - name: commitnotebook method: POST description: Commits the Live Version of the Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: version in: query type: string description: live version of the alias - name: comment in: query type: string description: Sets a comment for the notebook or version of the notebook - name: api-v2-databases-database-schemas-schema-notebooks-name}:execute path: /api/v2/databases/{database}/schemas/{schema}/notebooks/{name}:execute operations: - name: executenotebook method: POST description: Execute a Notebook outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-v2-databases-database-schemas-schema-notebooks-name}:rename path: /api/v2/databases/{database}/schemas/{schema}/notebooks/{name}:rename operations: - name: renamenotebook method: POST description: Changes the Name of the Notebook to New Name. outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: targetDatabase in: query type: string description: Database of the target resource. Defaults to the source's database - name: targetSchema in: query type: string description: Schema of the target resource. Defaults to the source's schema - name: targetName in: query type: string description: Name of the target resource. required: true exposes: - type: rest namespace: notebook-notebook-rest port: 8080 description: REST adapter for Snowflake Notebook API — notebook. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks name: api-v2-databases-database-schemas-schema-notebooks description: REST surface for api-v2-databases-database-schemas-schema-notebooks. operations: - method: GET name: listnotebooks description: List Notebooks call: notebook-notebook.listnotebooks outputParameters: - type: object mapping: $. - method: POST name: createnotebook description: Create a Notebook call: notebook-notebook.createnotebook with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks/{name} name: api-v2-databases-database-schemas-schema-notebooks-name description: REST surface for api-v2-databases-database-schemas-schema-notebooks-name. operations: - method: GET name: fetchnotebook description: Fetch a Notebook call: notebook-notebook.fetchnotebook outputParameters: - type: object mapping: $. - method: DELETE name: deletenotebook description: Delete a Notebook call: notebook-notebook.deletenotebook outputParameters: - type: object mapping: $. - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks/name-add-live-version name: api-v2-databases-database-schemas-schema-notebooks-name-add-live-version description: REST surface for api-v2-databases-database-schemas-schema-notebooks-name}:add-live-version. operations: - method: POST name: addliveversionnotebook description: Adds a Live Version to the Notebook call: notebook-notebook.addliveversionnotebook with: fromLast: rest.fromLast comment: rest.comment outputParameters: - type: object mapping: $. - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks/name-commit name: api-v2-databases-database-schemas-schema-notebooks-name-commit description: REST surface for api-v2-databases-database-schemas-schema-notebooks-name}:commit. operations: - method: POST name: commitnotebook description: Commits the Live Version of the Notebook call: notebook-notebook.commitnotebook with: version: rest.version comment: rest.comment outputParameters: - type: object mapping: $. - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks/name-execute name: api-v2-databases-database-schemas-schema-notebooks-name-execute description: REST surface for api-v2-databases-database-schemas-schema-notebooks-name}:execute. operations: - method: POST name: executenotebook description: Execute a Notebook call: notebook-notebook.executenotebook outputParameters: - type: object mapping: $. - path: /v1/api/v2/databases/{database}/schemas/{schema}/notebooks/name-rename name: api-v2-databases-database-schemas-schema-notebooks-name-rename description: REST surface for api-v2-databases-database-schemas-schema-notebooks-name}:rename. operations: - method: POST name: renamenotebook description: Changes the Name of the Notebook to New Name. call: notebook-notebook.renamenotebook with: targetDatabase: rest.targetDatabase targetSchema: rest.targetSchema targetName: rest.targetName outputParameters: - type: object mapping: $. - type: mcp namespace: notebook-notebook-mcp port: 9090 transport: http description: MCP adapter for Snowflake Notebook API — notebook. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: list-notebooks description: List Notebooks hints: readOnly: true destructive: false idempotent: true call: notebook-notebook.listnotebooks outputParameters: - type: object mapping: $. - name: create-notebook description: Create a Notebook hints: readOnly: false destructive: false idempotent: false call: notebook-notebook.createnotebook with: body: tools.body outputParameters: - type: object mapping: $. - name: fetch-notebook description: Fetch a Notebook hints: readOnly: true destructive: false idempotent: true call: notebook-notebook.fetchnotebook outputParameters: - type: object mapping: $. - name: delete-notebook description: Delete a Notebook hints: readOnly: false destructive: true idempotent: true call: notebook-notebook.deletenotebook outputParameters: - type: object mapping: $. - name: adds-live-version-notebook description: Adds a Live Version to the Notebook hints: readOnly: false destructive: false idempotent: false call: notebook-notebook.addliveversionnotebook with: fromLast: tools.fromLast comment: tools.comment outputParameters: - type: object mapping: $. - name: commits-live-version-notebook description: Commits the Live Version of the Notebook hints: readOnly: false destructive: false idempotent: false call: notebook-notebook.commitnotebook with: version: tools.version comment: tools.comment outputParameters: - type: object mapping: $. - name: execute-notebook description: Execute a Notebook hints: readOnly: false destructive: false idempotent: false call: notebook-notebook.executenotebook outputParameters: - type: object mapping: $. - name: changes-name-notebook-new-name description: Changes the Name of the Notebook to New Name. hints: readOnly: false destructive: false idempotent: false call: notebook-notebook.renamenotebook with: targetDatabase: tools.targetDatabase targetSchema: tools.targetSchema targetName: tools.targetName outputParameters: - type: object mapping: $.