Microsoft Graph · Capability

Microsoft Graph App Catalogs API — App Catalogs Teams Apps

Microsoft Graph App Catalogs API — App Catalogs Teams Apps. 15 operations. Lead operation: Microsoft Graph List teamsApp. Self-contained Naftiko capability covering one Microsoft Graph business surface.

Run with Naftiko Microsoft GraphApp Catalogs Teams Apps

What You Can Do

GET
Listappcatalogsteamsapps — Microsoft Graph List teamsApp
/v1/appcatalogs/teamsapps
POST
Createappcatalogsteamsapps — Microsoft Graph Publish teamsApp
/v1/appcatalogs/teamsapps
GET
Countappcatalogsteamsapps — Microsoft Graph Get the number of the resource
/v1/appcatalogs/teamsapps/count
GET
Getappcatalogsteamsapps — Microsoft Graph Get teamsApps from appCatalogs
/v1/appcatalogs/teamsapps/{teamsapp-id}
PATCH
Updateappcatalogsteamsapps — Microsoft Graph Update Teams Apps
/v1/appcatalogs/teamsapps/{teamsapp-id}
DELETE
Deleteappcatalogsteamsapps — Microsoft Graph Delete teamsApp
/v1/appcatalogs/teamsapps/{teamsapp-id}
GET
Getappcatalogsteamsappsappdefinitions — Microsoft Graph Get appDefinitions from appCatalogs
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions
POST
Createappcatalogsteamsappsappdefinitions — Microsoft Graph Update teamsApp
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions
GET
Countappcatalogsteamsappsappdefinitions — Microsoft Graph Get the number of the resource
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/count
GET
Getappcatalogsteamsappsappdefinitions1 — Microsoft Graph Get appDefinitions from appCatalogs
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}
PATCH
Updateappcatalogsteamsappsappdefinitions — Microsoft Graph Publish teamsApp
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}
DELETE
Deleteappcatalogsteamsappsappdefinitions — Microsoft Graph Delete App Definitions
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}
GET
Getappcatalogsteamsappsappdefinitionsbot — Microsoft Graph Get teamworkBot
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}/bot
PATCH
Updateappcatalogsteamsappsappdefinitionsbot — Microsoft Graph Update Bot
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}/bot
DELETE
Deleteappcatalogsteamsappsappdefinitionsbot — Microsoft Graph Delete Bot
/v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}/bot

MCP Tools

microsoft-graph-list-teamsapp

Microsoft Graph List teamsApp

read-only idempotent
microsoft-graph-publish-teamsapp

Microsoft Graph Publish teamsApp

microsoft-graph-get-number-resource

Microsoft Graph Get the number of the resource

read-only idempotent
microsoft-graph-get-teamsapps-appcatalogs

Microsoft Graph Get teamsApps from appCatalogs

read-only idempotent
microsoft-graph-update-teams-apps

Microsoft Graph Update Teams Apps

idempotent
microsoft-graph-delete-teamsapp

Microsoft Graph Delete teamsApp

idempotent
microsoft-graph-get-appdefinitions-appcatalogs

Microsoft Graph Get appDefinitions from appCatalogs

read-only idempotent
microsoft-graph-update-teamsapp

Microsoft Graph Update teamsApp

microsoft-graph-get-number-resource-2

Microsoft Graph Get the number of the resource

read-only idempotent
microsoft-graph-get-appdefinitions-appcatalogs-2

Microsoft Graph Get appDefinitions from appCatalogs

read-only idempotent
microsoft-graph-publish-teamsapp-2

Microsoft Graph Publish teamsApp

idempotent
microsoft-graph-delete-app-definitions

Microsoft Graph Delete App Definitions

idempotent
microsoft-graph-get-teamworkbot

Microsoft Graph Get teamworkBot

read-only idempotent
microsoft-graph-update-bot

Microsoft Graph Update Bot

idempotent
microsoft-graph-delete-bot

Microsoft Graph Delete Bot

idempotent

Capability Spec

appcatalogs-app-catalogs-teams-apps.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Microsoft Graph App Catalogs API — App Catalogs Teams Apps
  description: 'Microsoft Graph App Catalogs API — App Catalogs Teams Apps. 15 operations. Lead operation: Microsoft Graph
    List teamsApp. Self-contained Naftiko capability covering one Microsoft Graph business surface.'
  tags:
  - Microsoft Graph
  - App Catalogs Teams Apps
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_GRAPH_API_KEY: MICROSOFT_GRAPH_API_KEY
capability:
  consumes:
  - type: http
    namespace: appcatalogs-app-catalogs-teams-apps
    baseUri: https://graph.microsoft.com/v1.0
    description: Microsoft Graph App Catalogs API — App Catalogs Teams Apps business capability. Self-contained, no shared
      references.
    resources:
    - name: appCatalogs-teamsApps
      path: /appCatalogs/teamsApps
      operations:
      - name: listappcatalogsteamsapps
        method: GET
        description: Microsoft Graph List teamsApp
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: $orderby
          in: query
          type: array
          description: Order items by property values
        - name: $select
          in: query
          type: array
          description: Select properties to be returned
        - name: $expand
          in: query
          type: array
          description: Expand related entities
      - name: createappcatalogsteamsapps
        method: POST
        description: Microsoft Graph Publish teamsApp
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: appCatalogs-teamsApps-$count
      path: /appCatalogs/teamsApps/$count
      operations:
      - name: countappcatalogsteamsapps
        method: GET
        description: Microsoft Graph Get the number of the resource
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: appCatalogs-teamsApps-teamsApp-id
      path: /appCatalogs/teamsApps/{teamsApp-id}
      operations:
      - name: getappcatalogsteamsapps
        method: GET
        description: Microsoft Graph Get teamsApps from appCatalogs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: $select
          in: query
          type: array
          description: Select properties to be returned
        - name: $expand
          in: query
          type: array
          description: Expand related entities
      - name: updateappcatalogsteamsapps
        method: PATCH
        description: Microsoft Graph Update Teams Apps
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteappcatalogsteamsapps
        method: DELETE
        description: Microsoft Graph Delete teamsApp
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: If-Match
          in: header
          type: string
          description: ETag
    - name: appCatalogs-teamsApps-teamsApp-id-appDefinitions
      path: /appCatalogs/teamsApps/{teamsApp-id}/appDefinitions
      operations:
      - name: getappcatalogsteamsappsappdefinitions
        method: GET
        description: Microsoft Graph Get appDefinitions from appCatalogs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: $orderby
          in: query
          type: array
          description: Order items by property values
        - name: $select
          in: query
          type: array
          description: Select properties to be returned
        - name: $expand
          in: query
          type: array
          description: Expand related entities
      - name: createappcatalogsteamsappsappdefinitions
        method: POST
        description: Microsoft Graph Update teamsApp
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
    - name: appCatalogs-teamsApps-teamsApp-id-appDefinitions-$count
      path: /appCatalogs/teamsApps/{teamsApp-id}/appDefinitions/$count
      operations:
      - name: countappcatalogsteamsappsappdefinitions
        method: GET
        description: Microsoft Graph Get the number of the resource
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: appCatalogs-teamsApps-teamsApp-id-appDefinitions-teamsAppDefinition-id
      path: /appCatalogs/teamsApps/{teamsApp-id}/appDefinitions/{teamsAppDefinition-id}
      operations:
      - name: getappcatalogsteamsappsappdefinitions1
        method: GET
        description: Microsoft Graph Get appDefinitions from appCatalogs
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: $select
          in: query
          type: array
          description: Select properties to be returned
        - name: $expand
          in: query
          type: array
          description: Expand related entities
      - name: updateappcatalogsteamsappsappdefinitions
        method: PATCH
        description: Microsoft Graph Publish teamsApp
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteappcatalogsteamsappsappdefinitions
        method: DELETE
        description: Microsoft Graph Delete App Definitions
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: If-Match
          in: header
          type: string
          description: ETag
    - name: appCatalogs-teamsApps-teamsApp-id-appDefinitions-teamsAppDefinition-id-bot
      path: /appCatalogs/teamsApps/{teamsApp-id}/appDefinitions/{teamsAppDefinition-id}/bot
      operations:
      - name: getappcatalogsteamsappsappdefinitionsbot
        method: GET
        description: Microsoft Graph Get teamworkBot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: $select
          in: query
          type: array
          description: Select properties to be returned
        - name: $expand
          in: query
          type: array
          description: Expand related entities
      - name: updateappcatalogsteamsappsappdefinitionsbot
        method: PATCH
        description: Microsoft Graph Update Bot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: body
          in: body
          type: object
          description: Request body (JSON).
          required: true
      - name: deleteappcatalogsteamsappsappdefinitionsbot
        method: DELETE
        description: Microsoft Graph Delete Bot
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: If-Match
          in: header
          type: string
          description: ETag
  exposes:
  - type: rest
    namespace: appcatalogs-app-catalogs-teams-apps-rest
    port: 8080
    description: REST adapter for Microsoft Graph App Catalogs API — App Catalogs Teams Apps. One Spectral-compliant resource
      per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/appcatalogs/teamsapps
      name: appcatalogs-teamsapps
      description: REST surface for appCatalogs-teamsApps.
      operations:
      - method: GET
        name: listappcatalogsteamsapps
        description: Microsoft Graph List teamsApp
        call: appcatalogs-app-catalogs-teams-apps.listappcatalogsteamsapps
        with:
          $orderby: rest.$orderby
          $select: rest.$select
          $expand: rest.$expand
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createappcatalogsteamsapps
        description: Microsoft Graph Publish teamsApp
        call: appcatalogs-app-catalogs-teams-apps.createappcatalogsteamsapps
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/count
      name: appcatalogs-teamsapps-count
      description: REST surface for appCatalogs-teamsApps-$count.
      operations:
      - method: GET
        name: countappcatalogsteamsapps
        description: Microsoft Graph Get the number of the resource
        call: appcatalogs-app-catalogs-teams-apps.countappcatalogsteamsapps
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/{teamsapp-id}
      name: appcatalogs-teamsapps-teamsapp-id
      description: REST surface for appCatalogs-teamsApps-teamsApp-id.
      operations:
      - method: GET
        name: getappcatalogsteamsapps
        description: Microsoft Graph Get teamsApps from appCatalogs
        call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsapps
        with:
          $select: rest.$select
          $expand: rest.$expand
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateappcatalogsteamsapps
        description: Microsoft Graph Update Teams Apps
        call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsapps
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteappcatalogsteamsapps
        description: Microsoft Graph Delete teamsApp
        call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsapps
        with:
          If-Match: rest.If-Match
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions
      name: appcatalogs-teamsapps-teamsapp-id-appdefinitions
      description: REST surface for appCatalogs-teamsApps-teamsApp-id-appDefinitions.
      operations:
      - method: GET
        name: getappcatalogsteamsappsappdefinitions
        description: Microsoft Graph Get appDefinitions from appCatalogs
        call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitions
        with:
          $orderby: rest.$orderby
          $select: rest.$select
          $expand: rest.$expand
        outputParameters:
        - type: object
          mapping: $.
      - method: POST
        name: createappcatalogsteamsappsappdefinitions
        description: Microsoft Graph Update teamsApp
        call: appcatalogs-app-catalogs-teams-apps.createappcatalogsteamsappsappdefinitions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/count
      name: appcatalogs-teamsapps-teamsapp-id-appdefinitions-count
      description: REST surface for appCatalogs-teamsApps-teamsApp-id-appDefinitions-$count.
      operations:
      - method: GET
        name: countappcatalogsteamsappsappdefinitions
        description: Microsoft Graph Get the number of the resource
        call: appcatalogs-app-catalogs-teams-apps.countappcatalogsteamsappsappdefinitions
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}
      name: appcatalogs-teamsapps-teamsapp-id-appdefinitions-teamsappdefinition-id
      description: REST surface for appCatalogs-teamsApps-teamsApp-id-appDefinitions-teamsAppDefinition-id.
      operations:
      - method: GET
        name: getappcatalogsteamsappsappdefinitions1
        description: Microsoft Graph Get appDefinitions from appCatalogs
        call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitions1
        with:
          $select: rest.$select
          $expand: rest.$expand
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateappcatalogsteamsappsappdefinitions
        description: Microsoft Graph Publish teamsApp
        call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsappsappdefinitions
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteappcatalogsteamsappsappdefinitions
        description: Microsoft Graph Delete App Definitions
        call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsappsappdefinitions
        with:
          If-Match: rest.If-Match
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/appcatalogs/teamsapps/{teamsapp-id}/appdefinitions/{teamsappdefinition-id}/bot
      name: appcatalogs-teamsapps-teamsapp-id-appdefinitions-teamsappdefinition-id-bot
      description: REST surface for appCatalogs-teamsApps-teamsApp-id-appDefinitions-teamsAppDefinition-id-bot.
      operations:
      - method: GET
        name: getappcatalogsteamsappsappdefinitionsbot
        description: Microsoft Graph Get teamworkBot
        call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitionsbot
        with:
          $select: rest.$select
          $expand: rest.$expand
        outputParameters:
        - type: object
          mapping: $.
      - method: PATCH
        name: updateappcatalogsteamsappsappdefinitionsbot
        description: Microsoft Graph Update Bot
        call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsappsappdefinitionsbot
        with:
          body: rest.body
        outputParameters:
        - type: object
          mapping: $.
      - method: DELETE
        name: deleteappcatalogsteamsappsappdefinitionsbot
        description: Microsoft Graph Delete Bot
        call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsappsappdefinitionsbot
        with:
          If-Match: rest.If-Match
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: appcatalogs-app-catalogs-teams-apps-mcp
    port: 9090
    transport: http
    description: MCP adapter for Microsoft Graph App Catalogs API — App Catalogs Teams Apps. One tool per consumed operation,
      routed inline through this capability's consumes block.
    tools:
    - name: microsoft-graph-list-teamsapp
      description: Microsoft Graph List teamsApp
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.listappcatalogsteamsapps
      with:
        $orderby: tools.$orderby
        $select: tools.$select
        $expand: tools.$expand
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-publish-teamsapp
      description: Microsoft Graph Publish teamsApp
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: appcatalogs-app-catalogs-teams-apps.createappcatalogsteamsapps
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-number-resource
      description: Microsoft Graph Get the number of the resource
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.countappcatalogsteamsapps
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-teamsapps-appcatalogs
      description: Microsoft Graph Get teamsApps from appCatalogs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsapps
      with:
        $select: tools.$select
        $expand: tools.$expand
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-update-teams-apps
      description: Microsoft Graph Update Teams Apps
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsapps
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-delete-teamsapp
      description: Microsoft Graph Delete teamsApp
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsapps
      with:
        If-Match: tools.If-Match
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-appdefinitions-appcatalogs
      description: Microsoft Graph Get appDefinitions from appCatalogs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitions
      with:
        $orderby: tools.$orderby
        $select: tools.$select
        $expand: tools.$expand
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-update-teamsapp
      description: Microsoft Graph Update teamsApp
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: appcatalogs-app-catalogs-teams-apps.createappcatalogsteamsappsappdefinitions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-number-resource-2
      description: Microsoft Graph Get the number of the resource
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.countappcatalogsteamsappsappdefinitions
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-appdefinitions-appcatalogs-2
      description: Microsoft Graph Get appDefinitions from appCatalogs
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitions1
      with:
        $select: tools.$select
        $expand: tools.$expand
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-publish-teamsapp-2
      description: Microsoft Graph Publish teamsApp
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsappsappdefinitions
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-delete-app-definitions
      description: Microsoft Graph Delete App Definitions
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsappsappdefinitions
      with:
        If-Match: tools.If-Match
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-get-teamworkbot
      description: Microsoft Graph Get teamworkBot
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.getappcatalogsteamsappsappdefinitionsbot
      with:
        $select: tools.$select
        $expand: tools.$expand
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-update-bot
      description: Microsoft Graph Update Bot
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.updateappcatalogsteamsappsappdefinitionsbot
      with:
        body: tools.body
      outputParameters:
      - type: object
        mapping: $.
    - name: microsoft-graph-delete-bot
      description: Microsoft Graph Delete Bot
      hints:
        readOnly: false
        destructive: true
        idempotent: true
      call: appcatalogs-app-catalogs-teams-apps.deleteappcatalogsteamsappsappdefinitionsbot
      with:
        If-Match: tools.If-Match
      outputParameters:
      - type: object
        mapping: $.