naftiko: 1.0.0-alpha2 info: label: Knock Providers API — Providers description: 'Knock Providers API — Providers. 7 operations. Lead operation: slackproviderrevokeaccess. Self-contained Naftiko capability covering one Knock business surface.' tags: - Knock - Providers created: '2026-05-25' modified: '2026-05-25' binds: - namespace: env keys: KNOCK_API_KEY: KNOCK_API_KEY capability: consumes: - type: http namespace: providers baseUri: https://api.knock.app description: Knock Knock Providers API business capability. Self-contained, no shared references. resources: - name: v1-providers-slack-channel_id-channels path: /v1/providers/slack/{channel_id}/channels operations: - name: listchannelsforslackprovider method: GET description: List channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: v1-providers-ms-teams-channel_id-auth_check path: /v1/providers/ms-teams/{channel_id}/auth_check operations: - name: msteamsproviderauthcheck method: GET description: Check auth outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: v1-providers-slack-channel_id-auth_check path: /v1/providers/slack/{channel_id}/auth_check operations: - name: slackproviderauthcheck method: GET description: Check auth outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: v1-providers-ms-teams-channel_id-channels path: /v1/providers/ms-teams/{channel_id}/channels operations: - name: listchannelsformsteamsprovider method: GET description: List channels outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: v1-providers-slack-channel_id-revoke_access path: /v1/providers/slack/{channel_id}/revoke_access operations: - name: slackproviderrevokeaccess method: PUT description: Revoke access outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: body in: body type: object required: true - name: v1-providers-ms-teams-channel_id-teams path: /v1/providers/ms-teams/{channel_id}/teams operations: - name: listteamsformsteamsprovider method: GET description: List teams outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: v1-providers-ms-teams-channel_id-revoke_access path: /v1/providers/ms-teams/{channel_id}/revoke_access operations: - name: msteamsproviderrevokeaccess method: PUT description: Revoke access outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: channel_id in: path type: string required: true - name: body in: body type: object required: true authentication: type: bearer value: '{{env.KNOCK_API_KEY}}' placement: header exposes: - type: rest namespace: providers-rest port: 8080 description: REST adapter for Knock Knock Providers API. resources: - path: /v1/v1/providers/slack/{channel_id}/channels name: v1-providers-slack-channel_id-channels description: REST surface for v1-providers-slack-channel_id-channels. operations: - method: GET name: listchannelsforslackprovider description: List channels call: providers.listchannelsforslackprovider with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/v1/providers/ms-teams/{channel_id}/auth_check name: v1-providers-ms-teams-channel_id-auth_check description: REST surface for v1-providers-ms-teams-channel_id-auth_check. operations: - method: GET name: msteamsproviderauthcheck description: Check auth call: providers.msteamsproviderauthcheck with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/v1/providers/slack/{channel_id}/auth_check name: v1-providers-slack-channel_id-auth_check description: REST surface for v1-providers-slack-channel_id-auth_check. operations: - method: GET name: slackproviderauthcheck description: Check auth call: providers.slackproviderauthcheck with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/v1/providers/ms-teams/{channel_id}/channels name: v1-providers-ms-teams-channel_id-channels description: REST surface for v1-providers-ms-teams-channel_id-channels. operations: - method: GET name: listchannelsformsteamsprovider description: List channels call: providers.listchannelsformsteamsprovider with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/v1/providers/slack/{channel_id}/revoke_access name: v1-providers-slack-channel_id-revoke_access description: REST surface for v1-providers-slack-channel_id-revoke_access. operations: - method: PUT name: slackproviderrevokeaccess description: Revoke access call: providers.slackproviderrevokeaccess with: channel_id: rest.channel_id body: rest.body outputParameters: - type: object mapping: $. - path: /v1/v1/providers/ms-teams/{channel_id}/teams name: v1-providers-ms-teams-channel_id-teams description: REST surface for v1-providers-ms-teams-channel_id-teams. operations: - method: GET name: listteamsformsteamsprovider description: List teams call: providers.listteamsformsteamsprovider with: channel_id: rest.channel_id outputParameters: - type: object mapping: $. - path: /v1/v1/providers/ms-teams/{channel_id}/revoke_access name: v1-providers-ms-teams-channel_id-revoke_access description: REST surface for v1-providers-ms-teams-channel_id-revoke_access. operations: - method: PUT name: msteamsproviderrevokeaccess description: Revoke access call: providers.msteamsproviderrevokeaccess with: channel_id: rest.channel_id body: rest.body outputParameters: - type: object mapping: $. - type: mcp namespace: providers-mcp port: 9090 transport: http description: MCP adapter for Knock Knock Providers API. One tool per consumed operation. tools: - name: knock-listchannelsforslackprovider description: List channels hints: readOnly: true destructive: false idempotent: true call: providers.listchannelsforslackprovider with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: knock-msteamsproviderauthcheck description: Check auth hints: readOnly: true destructive: false idempotent: true call: providers.msteamsproviderauthcheck with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: knock-slackproviderauthcheck description: Check auth hints: readOnly: true destructive: false idempotent: true call: providers.slackproviderauthcheck with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: knock-listchannelsformsteamsprovider description: List channels hints: readOnly: true destructive: false idempotent: true call: providers.listchannelsformsteamsprovider with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: knock-slackproviderrevokeaccess description: Revoke access hints: readOnly: false destructive: false idempotent: true call: providers.slackproviderrevokeaccess with: channel_id: tools.channel_id body: tools.body outputParameters: - type: object mapping: $. - name: knock-listteamsformsteamsprovider description: List teams hints: readOnly: true destructive: false idempotent: true call: providers.listteamsformsteamsprovider with: channel_id: tools.channel_id outputParameters: - type: object mapping: $. - name: knock-msteamsproviderrevokeaccess description: Revoke access hints: readOnly: false destructive: false idempotent: true call: providers.msteamsproviderrevokeaccess with: channel_id: tools.channel_id body: tools.body outputParameters: - type: object mapping: $.