WebApps API Client

WebApps API Client. 20 operations. Lead operation: Gets publishing user. Self-contained Naftiko capability covering one Microsoft Azure Functions business surface.

Run with Naftiko Microsoft Azure Functions

What You Can Do

GET
Getpublishinguser — Gets publishing user
/v1/providers/microsoft-web/publishingusers/web
PUT
Updatepublishinguser — Updates publishing user
/v1/providers/microsoft-web/publishingusers/web
GET
Listsourcecontrols — Gets the source controls available for Azure websites.
/v1/providers/microsoft-web/sourcecontrols
GET
Getsourcecontrol — Gets source control token
/v1/providers/microsoft-web/sourcecontrols/{sourcecontroltype}
PUT
Updatesourcecontrol — Updates source control token
/v1/providers/microsoft-web/sourcecontrols/{sourcecontroltype}
GET
Listaseregions — Get a list of available ASE regions and its supported Skus.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/aseregions
GET
Listbillingmeters — Gets a list of meters for a given location.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/billingmeters
POST
Checknameavailability — Check if a resource name is available.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/checknameavailability
GET
Listcustomhostnamesites — Get custom hostnames under this subscription
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/customhostnamesites
GET
Getsubscriptiondeploymentlocations — Gets list of available geo regions plus ministamps
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/deploymentlocations
GET
Listgeoregions — Get a list of available geographical regions.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/georegions
POST
Listsiteidentifiersassignedtohostname — List all apps that are assigned to a hostname.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/listsitesassignedtohostname
POST
Regionalchecknameavailability — Check if a resource name is available for DNL sites.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/locations/{location}/checknameavailability
GET
Getusagesinlocationlist — Lists subscription core usages for all skus used in a location, for a given type of quota.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/locations/{location}/usages
GET
Listpremieraddonoffers — List all premier add-on offers.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/premieraddonoffers
GET
Listskus — List all SKUs.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/skus
POST
Verifyhostingenvironmentvnet — Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.
/v1/subscriptions/{subscriptionid}/providers/microsoft-web/verifyhostingenvironmentvnet
POST
Move — Move resources between resource groups.
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/moveresources
POST
Validate — Validate if a resource can be created.
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/validate
POST
Validatemove — Validate whether a resource can be moved.
/v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/validatemoveresources

MCP Tools

gets-publishing-user

Gets publishing user

read-only idempotent
updates-publishing-user

Updates publishing user

idempotent
gets-source-controls-available-azure

Gets the source controls available for Azure websites.

read-only idempotent
gets-source-control-token

Gets source control token

read-only idempotent
updates-source-control-token

Updates source control token

idempotent
get-list-available-ase-regions

Get a list of available ASE regions and its supported Skus.

read-only idempotent
gets-list-meters-given-location

Gets a list of meters for a given location.

read-only idempotent
check-if-resource-name-is

Check if a resource name is available.

read-only
get-custom-hostnames-under-this

Get custom hostnames under this subscription

read-only idempotent
gets-list-available-geo-regions

Gets list of available geo regions plus ministamps

read-only idempotent
get-list-available-geographical-regions

Get a list of available geographical regions.

read-only idempotent
list-all-apps-that-are

List all apps that are assigned to a hostname.

read-only
check-if-resource-name-is-2

Check if a resource name is available for DNL sites.

read-only
lists-subscription-core-usages-all

Lists subscription core usages for all skus used in a location, for a given type of quota.

read-only idempotent
list-all-premier-add-offers

List all premier add-on offers.

read-only idempotent
list-all-skus

List all SKUs.

read-only idempotent
verifies-if-this-vnet-is

Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group rules.

move-resources-between-resource-groups

Move resources between resource groups.

validate-if-resource-can-be

Validate if a resource can be created.

read-only
validate-whether-resource-can-be

Validate whether a resource can be moved.

read-only

Capability Spec

azure-functions-management-general.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: WebApps API Client
  description: 'WebApps API Client. 20 operations. Lead operation: Gets publishing user. Self-contained Naftiko capability
    covering one Microsoft Azure Functions business surface.'
  tags:
  - Microsoft Azure Functions
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    MICROSOFT_AZURE_FUNCTIONS_API_KEY: MICROSOFT_AZURE_FUNCTIONS_API_KEY
capability:
  consumes:
  - type: http
    namespace: azure-functions-management-general
    baseUri: https://management.azure.com
    description: WebApps API Client business capability. Self-contained, no shared references.
    resources:
    - name: providers-Microsoft.Web-publishingUsers-web
      path: /providers/Microsoft.Web/publishingUsers/web
      operations:
      - name: getpublishinguser
        method: GET
        description: Gets publishing user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
      - name: updatepublishinguser
        method: PUT
        description: Updates publishing user
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: userDetails
          in: body
          type: string
          description: Details of publishing user
          required: true
    - name: providers-Microsoft.Web-sourcecontrols
      path: /providers/Microsoft.Web/sourcecontrols
      operations:
      - name: listsourcecontrols
        method: GET
        description: Gets the source controls available for Azure websites.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: providers-Microsoft.Web-sourcecontrols-sourceControlType
      path: /providers/Microsoft.Web/sourcecontrols/{sourceControlType}
      operations:
      - name: getsourcecontrol
        method: GET
        description: Gets source control token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sourceControlType
          in: path
          type: string
          description: Type of source control
          required: true
      - name: updatesourcecontrol
        method: PUT
        description: Updates source control token
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sourceControlType
          in: path
          type: string
          description: Type of source control
          required: true
        - name: requestMessage
          in: body
          type: string
          description: Source control token information
          required: true
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-aseRegions
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/aseRegions
      operations:
      - name: listaseregions
        method: GET
        description: Get a list of available ASE regions and its supported Skus.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-billingMeters
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/billingMeters
      operations:
      - name: listbillingmeters
        method: GET
        description: Gets a list of meters for a given location.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: billingLocation
          in: query
          type: string
          description: Azure Location of billable resource
        - name: osType
          in: query
          type: string
          description: App Service OS type meters used for
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-checknameavailability
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/checknameavailability
      operations:
      - name: checknameavailability
        method: POST
        description: Check if a resource name is available.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: request
          in: body
          type: string
          description: The request body
          required: true
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-customhostnameSites
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/customhostnameSites
      operations:
      - name: listcustomhostnamesites
        method: GET
        description: Get custom hostnames under this subscription
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: hostname
          in: query
          type: string
          description: Specific hostname
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-deploymentLocations
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/deploymentLocations
      operations:
      - name: getsubscriptiondeploymentlocations
        method: GET
        description: Gets list of available geo regions plus ministamps
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-geoRegions
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/geoRegions
      operations:
      - name: listgeoregions
        method: GET
        description: Get a list of available geographical regions.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: sku
          in: query
          type: string
          description: Name of SKU used to filter the regions.
        - name: linuxWorkersEnabled
          in: query
          type: boolean
          description: Specify <code>true</code> if you want to filter to only regions that support Linux workers.
        - name: xenonWorkersEnabled
          in: query
          type: boolean
          description: Specify <code>true</code> if you want to filter to only regions that support Xenon workers.
        - name: linuxDynamicWorkersEnabled
          in: query
          type: boolean
          description: Specify <code>true</code> if you want to filter to only regions that support Linux Consumption Workers.
        - name: customModeWorkersEnabled
          in: query
          type: boolean
          description: Specify <code>true</code> if you want to filter to only regions that support App Service Plans with
            <code>IsCustomMode</code> set to <code>true</code>.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-listSitesAssignedToHostName
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/listSitesAssignedToHostName
      operations:
      - name: listsiteidentifiersassignedtohostname
        method: POST
        description: List all apps that are assigned to a hostname.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: nameIdentifier
          in: body
          type: string
          description: The request body
          required: true
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-locations-location-checknam
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/checknameavailability
      operations:
      - name: regionalchecknameavailability
        method: POST
        description: Check if a resource name is available for DNL sites.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: request
          in: body
          type: string
          description: The request body
          required: true
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-locations-location-usages
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/locations/{location}/usages
      operations:
      - name: getusagesinlocationlist
        method: GET
        description: Lists subscription core usages for all skus used in a location, for a given type of quota.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-premieraddonoffers
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/premieraddonoffers
      operations:
      - name: listpremieraddonoffers
        method: GET
        description: List all premier add-on offers.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-skus
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/skus
      operations:
      - name: listskus
        method: GET
        description: List all SKUs.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: subscriptions-subscriptionId-providers-Microsoft.Web-verifyHostingEnvironmentVne
      path: /subscriptions/{subscriptionId}/providers/Microsoft.Web/verifyHostingEnvironmentVnet
      operations:
      - name: verifyhostingenvironmentvnet
        method: POST
        description: Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security
          Group rules.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: parameters
          in: body
          type: string
          description: The request body
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-moveResources
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/moveResources
      operations:
      - name: move
        method: POST
        description: Move resources between resource groups.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: moveResourceEnvelope
          in: body
          type: string
          description: Object that represents the resource to move.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Web/validate
      operations:
      - name: validate
        method: POST
        description: Validate if a resource can be created.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: validateRequest
          in: body
          type: string
          description: Request with the resources to validate.
          required: true
    - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-validateMoveResour
      path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/validateMoveResources
      operations:
      - name: validatemove
        method: POST
        description: Validate whether a resource can be moved.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: moveResourceEnvelope
          in: body
          type: string
          description: Object that represents the resource to move.
          required: true
  exposes:
  - type: rest
    namespace: azure-functions-management-general-rest
    port: 8080
    description: REST adapter for WebApps API Client. One Spectral-compliant resource per consumed operation, prefixed with
      /v1.
    resources:
    - path: /v1/providers/microsoft-web/publishingusers/web
      name: providers-microsoft-web-publishingusers-web
      description: REST surface for providers-Microsoft.Web-publishingUsers-web.
      operations:
      - method: GET
        name: getpublishinguser
        description: Gets publishing user
        call: azure-functions-management-general.getpublishinguser
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatepublishinguser
        description: Updates publishing user
        call: azure-functions-management-general.updatepublishinguser
        with:
          userDetails: rest.userDetails
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/providers/microsoft-web/sourcecontrols
      name: providers-microsoft-web-sourcecontrols
      description: REST surface for providers-Microsoft.Web-sourcecontrols.
      operations:
      - method: GET
        name: listsourcecontrols
        description: Gets the source controls available for Azure websites.
        call: azure-functions-management-general.listsourcecontrols
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/providers/microsoft-web/sourcecontrols/{sourcecontroltype}
      name: providers-microsoft-web-sourcecontrols-sourcecontroltype
      description: REST surface for providers-Microsoft.Web-sourcecontrols-sourceControlType.
      operations:
      - method: GET
        name: getsourcecontrol
        description: Gets source control token
        call: azure-functions-management-general.getsourcecontrol
        with:
          sourceControlType: rest.sourceControlType
        outputParameters:
        - type: object
          mapping: $.
      - method: PUT
        name: updatesourcecontrol
        description: Updates source control token
        call: azure-functions-management-general.updatesourcecontrol
        with:
          sourceControlType: rest.sourceControlType
          requestMessage: rest.requestMessage
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/aseregions
      name: subscriptions-subscriptionid-providers-microsoft-web-aseregions
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-aseRegions.
      operations:
      - method: GET
        name: listaseregions
        description: Get a list of available ASE regions and its supported Skus.
        call: azure-functions-management-general.listaseregions
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/billingmeters
      name: subscriptions-subscriptionid-providers-microsoft-web-billingmeters
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-billingMeters.
      operations:
      - method: GET
        name: listbillingmeters
        description: Gets a list of meters for a given location.
        call: azure-functions-management-general.listbillingmeters
        with:
          billingLocation: rest.billingLocation
          osType: rest.osType
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/checknameavailability
      name: subscriptions-subscriptionid-providers-microsoft-web-checknameavailability
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-checknameavailability.
      operations:
      - method: POST
        name: checknameavailability
        description: Check if a resource name is available.
        call: azure-functions-management-general.checknameavailability
        with:
          request: rest.request
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/customhostnamesites
      name: subscriptions-subscriptionid-providers-microsoft-web-customhostnamesites
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-customhostnameSites.
      operations:
      - method: GET
        name: listcustomhostnamesites
        description: Get custom hostnames under this subscription
        call: azure-functions-management-general.listcustomhostnamesites
        with:
          hostname: rest.hostname
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/deploymentlocations
      name: subscriptions-subscriptionid-providers-microsoft-web-deploymentlocations
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-deploymentLocations.
      operations:
      - method: GET
        name: getsubscriptiondeploymentlocations
        description: Gets list of available geo regions plus ministamps
        call: azure-functions-management-general.getsubscriptiondeploymentlocations
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/georegions
      name: subscriptions-subscriptionid-providers-microsoft-web-georegions
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-geoRegions.
      operations:
      - method: GET
        name: listgeoregions
        description: Get a list of available geographical regions.
        call: azure-functions-management-general.listgeoregions
        with:
          sku: rest.sku
          linuxWorkersEnabled: rest.linuxWorkersEnabled
          xenonWorkersEnabled: rest.xenonWorkersEnabled
          linuxDynamicWorkersEnabled: rest.linuxDynamicWorkersEnabled
          customModeWorkersEnabled: rest.customModeWorkersEnabled
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/listsitesassignedtohostname
      name: subscriptions-subscriptionid-providers-microsoft-web-listsitesassignedtohostname
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-listSitesAssignedToHostName.
      operations:
      - method: POST
        name: listsiteidentifiersassignedtohostname
        description: List all apps that are assigned to a hostname.
        call: azure-functions-management-general.listsiteidentifiersassignedtohostname
        with:
          nameIdentifier: rest.nameIdentifier
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/locations/{location}/checknameavailability
      name: subscriptions-subscriptionid-providers-microsoft-web-locations-location-checknam
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-locations-location-checknam.
      operations:
      - method: POST
        name: regionalchecknameavailability
        description: Check if a resource name is available for DNL sites.
        call: azure-functions-management-general.regionalchecknameavailability
        with:
          request: rest.request
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/locations/{location}/usages
      name: subscriptions-subscriptionid-providers-microsoft-web-locations-location-usages
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-locations-location-usages.
      operations:
      - method: GET
        name: getusagesinlocationlist
        description: Lists subscription core usages for all skus used in a location, for a given type of quota.
        call: azure-functions-management-general.getusagesinlocationlist
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/premieraddonoffers
      name: subscriptions-subscriptionid-providers-microsoft-web-premieraddonoffers
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-premieraddonoffers.
      operations:
      - method: GET
        name: listpremieraddonoffers
        description: List all premier add-on offers.
        call: azure-functions-management-general.listpremieraddonoffers
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/skus
      name: subscriptions-subscriptionid-providers-microsoft-web-skus
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-skus.
      operations:
      - method: GET
        name: listskus
        description: List all SKUs.
        call: azure-functions-management-general.listskus
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/providers/microsoft-web/verifyhostingenvironmentvnet
      name: subscriptions-subscriptionid-providers-microsoft-web-verifyhostingenvironmentvne
      description: REST surface for subscriptions-subscriptionId-providers-Microsoft.Web-verifyHostingEnvironmentVne.
      operations:
      - method: POST
        name: verifyhostingenvironmentvnet
        description: Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security
          Group rules.
        call: azure-functions-management-general.verifyhostingenvironmentvnet
        with:
          parameters: rest.parameters
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/moveresources
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-moveresources
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-moveResources.
      operations:
      - method: POST
        name: move
        description: Move resources between resource groups.
        call: azure-functions-management-general.move
        with:
          moveResourceEnvelope: rest.moveResourceEnvelope
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-web/validate
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof.
      operations:
      - method: POST
        name: validate
        description: Validate if a resource can be created.
        call: azure-functions-management-general.validate
        with:
          validateRequest: rest.validateRequest
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/validatemoveresources
      name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-validatemoveresour
      description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-validateMoveResour.
      operations:
      - method: POST
        name: validatemove
        description: Validate whether a resource can be moved.
        call: azure-functions-management-general.validatemove
        with:
          moveResourceEnvelope: rest.moveResourceEnvelope
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: azure-functions-management-general-mcp
    port: 9090
    transport: http
    description: MCP adapter for WebApps API Client. One tool per consumed operation, routed inline through this capability's
      consumes block.
    tools:
    - name: gets-publishing-user
      description: Gets publishing user
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.getpublishinguser
      outputParameters:
      - type: object
        mapping: $.
    - name: updates-publishing-user
      description: Updates publishing user
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: azure-functions-management-general.updatepublishinguser
      with:
        userDetails: tools.userDetails
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-source-controls-available-azure
      description: Gets the source controls available for Azure websites.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listsourcecontrols
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-source-control-token
      description: Gets source control token
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.getsourcecontrol
      with:
        sourceControlType: tools.sourceControlType
      outputParameters:
      - type: object
        mapping: $.
    - name: updates-source-control-token
      description: Updates source control token
      hints:
        readOnly: false
        destructive: false
        idempotent: true
      call: azure-functions-management-general.updatesourcecontrol
      with:
        sourceControlType: tools.sourceControlType
        requestMessage: tools.requestMessage
      outputParameters:
      - type: object
        mapping: $.
    - name: get-list-available-ase-regions
      description: Get a list of available ASE regions and its supported Skus.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listaseregions
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-list-meters-given-location
      description: Gets a list of meters for a given location.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listbillingmeters
      with:
        billingLocation: tools.billingLocation
        osType: tools.osType
      outputParameters:
      - type: object
        mapping: $.
    - name: check-if-resource-name-is
      description: Check if a resource name is available.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: azure-functions-management-general.checknameavailability
      with:
        request: tools.request
      outputParameters:
      - type: object
        mapping: $.
    - name: get-custom-hostnames-under-this
      description: Get custom hostnames under this subscription
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listcustomhostnamesites
      with:
        hostname: tools.hostname
      outputParameters:
      - type: object
        mapping: $.
    - name: gets-list-available-geo-regions
      description: Gets list of available geo regions plus ministamps
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.getsubscriptiondeploymentlocations
      outputParameters:
      - type: object
        mapping: $.
    - name: get-list-available-geographical-regions
      description: Get a list of available geographical regions.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listgeoregions
      with:
        sku: tools.sku
        linuxWorkersEnabled: tools.linuxWorkersEnabled
        xenonWorkersEnabled: tools.xenonWorkersEnabled
        linuxDynamicWorkersEnabled: tools.linuxDynamicWorkersEnabled
        customModeWorkersEnabled: tools.customModeWorkersEnabled
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-apps-that-are
      description: List all apps that are assigned to a hostname.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: azure-functions-management-general.listsiteidentifiersassignedtohostname
      with:
        nameIdentifier: tools.nameIdentifier
      outputParameters:
      - type: object
        mapping: $.
    - name: check-if-resource-name-is-2
      description: Check if a resource name is available for DNL sites.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: azure-functions-management-general.regionalchecknameavailability
      with:
        request: tools.request
      outputParameters:
      - type: object
        mapping: $.
    - name: lists-subscription-core-usages-all
      description: Lists subscription core usages for all skus used in a location, for a given type of quota.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.getusagesinlocationlist
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-premier-add-offers
      description: List all premier add-on offers.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listpremieraddonoffers
      outputParameters:
      - type: object
        mapping: $.
    - name: list-all-skus
      description: List all SKUs.
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: azure-functions-management-general.listskus
      outputParameters:
      - type: object
        mapping: $.
    - name: verifies-if-this-vnet-is
      description: Verifies if this VNET is compatible with an App Service Environment by analyzing the Network Security Group
        rules.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: azure-functions-management-general.verifyhostingenvironmentvnet
      with:
        parameters: tools.parameters
      outputParameters:
      - type: object
        mapping: $.
    - name: move-resources-between-resource-groups
      description: Move resources between resource groups.
      hints:
        readOnly: false
        destructive: false
        idempotent: false
      call: azure-functions-management-general.move
      with:
        moveResourceEnvelope: tools.moveResourceEnvelope
      outputParameters:
      - type: object
        mapping: $.
    - name: validate-if-resource-can-be
      description: Validate if a resource can be created.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: azure-functions-management-general.validate
      with:
        validateRequest: tools.validateRequest
      outputParameters:
      - type: object
        mapping: $.
    - name: validate-whether-resource-can-be
      description: Validate whether a resource can be moved.
      hints:
        readOnly: true
        destructive: false
        idempotent: false
      call: azure-functions-management-general.validatemove
      with:
        moveResourceEnvelope: tools.moveResourceEnvelope
      outputParameters:
      - type: object
        mapping: $.