Knock · Capability
Knock API — Microsoft Teams
Knock API — Microsoft Teams. 4 operations. Lead operation: Check auth. Self-contained Naftiko capability covering one Knock business surface.
What You Can Do
GET
Msteamsproviderauthcheck
— Check auth
/v1/v1/providers/ms-teams/{channel-id}/auth-check
GET
Listchannelsformsteamsprovider
— List channels
/v1/v1/providers/ms-teams/{channel-id}/channels
PUT
Msteamsproviderrevokeaccess
— Revoke access
/v1/v1/providers/ms-teams/{channel-id}/revoke-access
GET
Listteamsformsteamsprovider
— List teams
/v1/v1/providers/ms-teams/{channel-id}/teams
MCP Tools
check-auth
Check auth
read-only
idempotent
list-channels
List channels
read-only
idempotent
revoke-access
Revoke access
idempotent
list-teams
List teams
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: Knock API — Microsoft Teams
description: 'Knock API — Microsoft Teams. 4 operations. Lead operation: Check auth. Self-contained Naftiko capability covering
one Knock business surface.'
tags:
- Knock
- Microsoft Teams
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
KNOCK_API_KEY: KNOCK_API_KEY
capability:
consumes:
- type: http
namespace: knock-microsoft-teams
baseUri: https://api.knock.app
description: Knock API — Microsoft Teams business capability. Self-contained, no shared references.
resources:
- 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
description: The ID of the Knock Microsoft Teams channel to check.
required: true
- name: ms_teams_tenant_object
in: query
type: string
description: A JSON encoded string containing the Microsoft Teams tenant object reference.
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
description: The ID of the Knock Microsoft Teams channel to get channels for.
required: true
- name: ms_teams_tenant_object
in: query
type: string
description: A JSON encoded string containing the Microsoft Teams tenant object reference.
required: true
- name: team_id
in: query
type: string
description: Microsoft Teams team ID.
required: true
- name: query_options.$filter
in: query
type: string
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to filter channels.'
- name: query_options.$select
in: query
type: string
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to select specific properties.'
- 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
description: The ID of the Knock Microsoft Teams channel to revoke access for.
required: true
- name: ms_teams_tenant_object
in: query
type: string
description: A JSON encoded string containing the Microsoft Teams tenant object reference.
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
description: The ID of the Knock Microsoft Teams channel to get teams for.
required: true
- name: ms_teams_tenant_object
in: query
type: string
description: A JSON encoded string containing the Microsoft Teams tenant object reference.
required: true
- name: query_options.$filter
in: query
type: string
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to filter teams.'
- name: query_options.$select
in: query
type: string
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to select fields on a team.'
- name: query_options.$top
in: query
type: integer
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to limit the number of teams returned.'
- name: query_options.$skiptoken
in: query
type: string
description: '[OData param](https://learn.microsoft.com/en-us/graph/query-parameters) passed to the Microsoft Graph
API to retrieve the next page of results.'
authentication:
type: bearer
token: '{{env.KNOCK_API_KEY}}'
exposes:
- type: rest
namespace: knock-microsoft-teams-rest
port: 8080
description: REST adapter for Knock API — Microsoft Teams. One Spectral-compliant resource per consumed operation, prefixed
with /v1.
resources:
- 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: knock-microsoft-teams.msteamsproviderauthcheck
with:
channel_id: rest.channel_id
ms_teams_tenant_object: rest.ms_teams_tenant_object
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: knock-microsoft-teams.listchannelsformsteamsprovider
with:
channel_id: rest.channel_id
ms_teams_tenant_object: rest.ms_teams_tenant_object
team_id: rest.team_id
query_options.$filter: rest.query_options.$filter
query_options.$select: rest.query_options.$select
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: knock-microsoft-teams.msteamsproviderrevokeaccess
with:
channel_id: rest.channel_id
ms_teams_tenant_object: rest.ms_teams_tenant_object
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: knock-microsoft-teams.listteamsformsteamsprovider
with:
channel_id: rest.channel_id
ms_teams_tenant_object: rest.ms_teams_tenant_object
query_options.$filter: rest.query_options.$filter
query_options.$select: rest.query_options.$select
query_options.$top: rest.query_options.$top
query_options.$skiptoken: rest.query_options.$skiptoken
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: knock-microsoft-teams-mcp
port: 9090
transport: http
description: MCP adapter for Knock API — Microsoft Teams. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: check-auth
description: Check auth
hints:
readOnly: true
destructive: false
idempotent: true
call: knock-microsoft-teams.msteamsproviderauthcheck
with:
channel_id: tools.channel_id
ms_teams_tenant_object: tools.ms_teams_tenant_object
outputParameters:
- type: object
mapping: $.
- name: list-channels
description: List channels
hints:
readOnly: true
destructive: false
idempotent: true
call: knock-microsoft-teams.listchannelsformsteamsprovider
with:
channel_id: tools.channel_id
ms_teams_tenant_object: tools.ms_teams_tenant_object
team_id: tools.team_id
query_options.$filter: tools.query_options.$filter
query_options.$select: tools.query_options.$select
outputParameters:
- type: object
mapping: $.
- name: revoke-access
description: Revoke access
hints:
readOnly: false
destructive: false
idempotent: true
call: knock-microsoft-teams.msteamsproviderrevokeaccess
with:
channel_id: tools.channel_id
ms_teams_tenant_object: tools.ms_teams_tenant_object
outputParameters:
- type: object
mapping: $.
- name: list-teams
description: List teams
hints:
readOnly: true
destructive: false
idempotent: true
call: knock-microsoft-teams.listteamsformsteamsprovider
with:
channel_id: tools.channel_id
ms_teams_tenant_object: tools.ms_teams_tenant_object
query_options.$filter: tools.query_options.$filter
query_options.$select: tools.query_options.$select
query_options.$top: tools.query_options.$top
query_options.$skiptoken: tools.query_options.$skiptoken
outputParameters:
- type: object
mapping: $.