naftiko: 1.0.0-alpha2 info: label: airbyte-api — Sources description: 'airbyte-api — Sources. 7 operations. Lead operation: Airbyte List Sources. Self-contained Naftiko capability covering one Airbyte business surface.' tags: - Airbyte - Sources created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: AIRBYTE_API_KEY: AIRBYTE_API_KEY capability: consumes: - type: http namespace: airbyte-sources baseUri: https://api.airbyte.com/v1 description: airbyte-api — Sources business capability. Self-contained, no shared references. resources: - name: sources path: /sources operations: - name: listsources method: GET description: Airbyte List Sources outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: workspaceIds in: query type: array description: The UUIDs of the workspaces you wish to list sources for. Empty list will retrieve all allowed workspaces. - name: includeDeleted in: query type: boolean description: Include deleted sources in the returned results. - name: limit in: query type: integer description: Set the limit on the number of sources returned. The default is 20. - name: offset in: query type: integer description: Set the offset to start at when returning sources. The default is 0 - name: createsource method: POST description: Airbyte Create a Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: sources-initiateOAuth path: /sources/initiateOAuth operations: - name: initiateoauth method: POST description: Airbyte Initiate OAuth for a Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: sources-sourceId path: /sources/{sourceId} operations: - name: getsource method: GET description: Airbyte Get Source Details outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: includeSecretCoordinates in: query type: boolean description: Rather than return *** for secret properties include the secret coordinate information - name: patchsource method: PATCH description: Airbyte Update a Source outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: putsource method: PUT description: Airbyte Update a Source and Fully Overwrite it outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: false - name: deletesource method: DELETE description: Airbyte Delete a Source outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: airbyte-sources-rest port: 8080 description: REST adapter for airbyte-api — Sources. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/sources name: sources description: REST surface for sources. operations: - method: GET name: listsources description: Airbyte List Sources call: airbyte-sources.listsources with: workspaceIds: rest.workspaceIds includeDeleted: rest.includeDeleted limit: rest.limit offset: rest.offset outputParameters: - type: object mapping: $. - method: POST name: createsource description: Airbyte Create a Source call: airbyte-sources.createsource with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/sources/initiateoauth name: sources-initiateoauth description: REST surface for sources-initiateOAuth. operations: - method: POST name: initiateoauth description: Airbyte Initiate OAuth for a Source call: airbyte-sources.initiateoauth with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/sources/{sourceid} name: sources-sourceid description: REST surface for sources-sourceId. operations: - method: GET name: getsource description: Airbyte Get Source Details call: airbyte-sources.getsource with: includeSecretCoordinates: rest.includeSecretCoordinates outputParameters: - type: object mapping: $. - method: PATCH name: patchsource description: Airbyte Update a Source call: airbyte-sources.patchsource with: body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: putsource description: Airbyte Update a Source and Fully Overwrite it call: airbyte-sources.putsource with: body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletesource description: Airbyte Delete a Source call: airbyte-sources.deletesource outputParameters: - type: object mapping: $. - type: mcp namespace: airbyte-sources-mcp port: 9090 transport: http description: MCP adapter for airbyte-api — Sources. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: airbyte-list-sources description: Airbyte List Sources hints: readOnly: true destructive: false idempotent: true call: airbyte-sources.listsources with: workspaceIds: tools.workspaceIds includeDeleted: tools.includeDeleted limit: tools.limit offset: tools.offset outputParameters: - type: object mapping: $. - name: airbyte-create-source description: Airbyte Create a Source hints: readOnly: false destructive: false idempotent: false call: airbyte-sources.createsource with: body: tools.body outputParameters: - type: object mapping: $. - name: airbyte-initiate-oauth-source description: Airbyte Initiate OAuth for a Source hints: readOnly: false destructive: false idempotent: false call: airbyte-sources.initiateoauth with: body: tools.body outputParameters: - type: object mapping: $. - name: airbyte-get-source-details description: Airbyte Get Source Details hints: readOnly: true destructive: false idempotent: true call: airbyte-sources.getsource with: includeSecretCoordinates: tools.includeSecretCoordinates outputParameters: - type: object mapping: $. - name: airbyte-update-source description: Airbyte Update a Source hints: readOnly: false destructive: false idempotent: true call: airbyte-sources.patchsource with: body: tools.body outputParameters: - type: object mapping: $. - name: airbyte-update-source-and-fully description: Airbyte Update a Source and Fully Overwrite it hints: readOnly: false destructive: false idempotent: true call: airbyte-sources.putsource with: body: tools.body outputParameters: - type: object mapping: $. - name: airbyte-delete-source description: Airbyte Delete a Source hints: readOnly: false destructive: true idempotent: true call: airbyte-sources.deletesource outputParameters: - type: object mapping: $.