naftiko: 1.0.0-alpha2 info: label: Microsoft Azure Azure Migrate Discovery Service — WebAppSitesController description: 'Microsoft Azure Azure Migrate Discovery Service — WebAppSitesController. 9 operations. Lead operation: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - WebAppSitesController created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: MICROSOFT_AZURE_API_KEY: MICROSOFT_AZURE_API_KEY capability: consumes: - type: http namespace: azure-migrate-discovery-service-webappsitescontroller baseUri: https://management.azure.com description: Microsoft Azure Azure Migrate Discovery Service — WebAppSitesController business capability. Self-contained, no shared references. resources: - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites operations: - name: microsoftazurewebappsitescontrollerlistbymastersite method: GET description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites/{webAppSiteName} operations: - name: microsoftazurewebappsitescontrollerget method: GET description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: microsoftazurewebappsitescontrollercreate method: PUT description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: body in: body type: string description: Resource create parameters. required: true - name: microsoftazurewebappsitescontrollerupdate method: PATCH description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: properties in: body type: string description: The resource properties to be updated. required: true - name: microsoftazurewebappsitescontrollerdelete method: DELETE description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites/{webAppSiteName}/errorSummary operations: - name: microsoftazurewebappsitescontrollererrorsummary method: POST description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Errorsummary outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: body in: body type: string description: The content of the action request required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites/{webAppSiteName}/exportInventory operations: - name: microsoftazurewebappsitescontrollerexportinventory method: POST description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Exportinventory outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: body in: body type: string description: The content of the action request required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites/{webAppSiteName}/refresh operations: - name: microsoftazurewebappsitescontrollerrefresh method: POST description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Refresh outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true - name: body in: body type: string description: The content of the action request required: true - name: subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof path: /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.OffAzure/masterSites/{siteName}/webAppSites/{webAppSiteName}/summary operations: - name: microsoftazurewebappsitescontrollersummary method: POST description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Summary outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: siteName in: path type: string description: Site name required: true - name: webAppSiteName in: path type: string description: Web app site name. required: true exposes: - type: rest namespace: azure-migrate-discovery-service-webappsitescontroller-rest port: 8080 description: REST adapter for Microsoft Azure Azure Migrate Discovery Service — WebAppSitesController. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: microsoftazurewebappsitescontrollerlistbymastersite description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerlistbymastersite with: siteName: rest.siteName outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites/{webappsitename} name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: GET name: microsoftazurewebappsitescontrollerget description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerget with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName outputParameters: - type: object mapping: $. - method: PUT name: microsoftazurewebappsitescontrollercreate description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollercreate with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: microsoftazurewebappsitescontrollerupdate description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerupdate with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName properties: rest.properties outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazurewebappsitescontrollerdelete description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerdelete with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites/{webappsitename}/errorsummary name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurewebappsitescontrollererrorsummary description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Errorsummary call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollererrorsummary with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites/{webappsitename}/exportinventory name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurewebappsitescontrollerexportinventory description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Exportinventory call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerexportinventory with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites/{webappsitename}/refresh name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurewebappsitescontrollerrefresh description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Refresh call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerrefresh with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName body: rest.body outputParameters: - type: object mapping: $. - path: /v1/subscriptions/{subscriptionid}/resourcegroups/{resourcegroupname}/providers/microsoft-offazure/mastersites/{sitename}/webappsites/{webappsitename}/summary name: subscriptions-subscriptionid-resourcegroups-resourcegroupname-providers-microsof description: REST surface for subscriptions-subscriptionId-resourceGroups-resourceGroupName-providers-Microsof. operations: - method: POST name: microsoftazurewebappsitescontrollersummary description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Summary call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollersummary with: siteName: rest.siteName webAppSiteName: rest.webAppSiteName outputParameters: - type: object mapping: $. - type: mcp namespace: azure-migrate-discovery-service-webappsitescontroller-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure Azure Migrate Discovery Service — WebAppSitesController. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-get-subscriptions-subscriptionid description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites hints: readOnly: true destructive: false idempotent: true call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerlistbymastersite with: siteName: tools.siteName outputParameters: - type: object mapping: $. - name: microsoft-azure-get-subscriptions-subscriptionid-2 description: Microsoft Azure Get Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename hints: readOnly: true destructive: false idempotent: true call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerget with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName outputParameters: - type: object mapping: $. - name: microsoft-azure-put-subscriptions-subscriptionid description: Microsoft Azure Put Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename hints: readOnly: false destructive: false idempotent: true call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollercreate with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-patch-subscriptions-subscriptionid description: Microsoft Azure Patch Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename hints: readOnly: false destructive: false idempotent: true call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerupdate with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName properties: tools.properties outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-subscriptions-subscriptionid description: Microsoft Azure Delete Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename hints: readOnly: false destructive: true idempotent: true call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerdelete with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName outputParameters: - type: object mapping: $. - name: microsoft-azure-post-subscriptions-subscriptionid description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Errorsummary hints: readOnly: false destructive: false idempotent: false call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollererrorsummary with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-post-subscriptions-subscriptionid-2 description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Exportinventory hints: readOnly: false destructive: false idempotent: false call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerexportinventory with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-post-subscriptions-subscriptionid-3 description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Refresh hints: readOnly: false destructive: false idempotent: false call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollerrefresh with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-post-subscriptions-subscriptionid-4 description: Microsoft Azure Post Subscriptions Subscriptionid Resourcegroups Resourcegroupname Providers Microsoft Offazure Mastersites Sitename Webappsites Webappsitename Summary hints: readOnly: false destructive: false idempotent: false call: azure-migrate-discovery-service-webappsitescontroller.microsoftazurewebappsitescontrollersummary with: siteName: tools.siteName webAppSiteName: tools.webAppSiteName outputParameters: - type: object mapping: $.