naftiko: 1.0.0-alpha2 info: label: Microsoft Azure Contoso Widget Manager — Widgets description: 'Microsoft Azure Contoso Widget Manager — Widgets. 5 operations. Lead operation: Microsoft Azure Get Widgets. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - Widgets 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: contoso-widget-manager-widgets baseUri: '' description: Microsoft Azure Contoso Widget Manager — Widgets business capability. Self-contained, no shared references. resources: - name: widgets path: /widgets operations: - name: microsoftazurewidgetslistwidgets method: GET description: Microsoft Azure Get Widgets outputRawFormat: json outputParameters: - name: result type: object value: $. - name: widgets-widgetName path: /widgets/{widgetName} operations: - name: microsoftazurewidgetsgetwidget method: GET description: Microsoft Azure Get Widgets Widgetname outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: widgetName in: path type: string description: The widget name. required: true - name: microsoftazurewidgetscreateorupdatewidget method: PATCH description: Microsoft Azure Patch Widgets Widgetname outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: widgetName in: path type: string description: The widget name. required: true - name: resource in: body type: string description: The resource instance. required: true - name: microsoftazurewidgetsdeletewidget method: DELETE description: Microsoft Azure Delete Widgets Widgetname outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: widgetName in: path type: string description: The widget name. required: true - name: widgets-widgetName-operations-operationId path: /widgets/{widgetName}/operations/{operationId} operations: - name: microsoftazurewidgetsgetwidgetoperationstatus method: GET description: Microsoft Azure Get Widgets Widgetname Operations Operationid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: widgetName in: path type: string description: The widget name. required: true - name: operationId in: path type: string description: The unique ID of the operation. required: true exposes: - type: rest namespace: contoso-widget-manager-widgets-rest port: 8080 description: REST adapter for Microsoft Azure Contoso Widget Manager — Widgets. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/widgets name: widgets description: REST surface for widgets. operations: - method: GET name: microsoftazurewidgetslistwidgets description: Microsoft Azure Get Widgets call: contoso-widget-manager-widgets.microsoftazurewidgetslistwidgets outputParameters: - type: object mapping: $. - path: /v1/widgets/{widgetname} name: widgets-widgetname description: REST surface for widgets-widgetName. operations: - method: GET name: microsoftazurewidgetsgetwidget description: Microsoft Azure Get Widgets Widgetname call: contoso-widget-manager-widgets.microsoftazurewidgetsgetwidget with: widgetName: rest.widgetName outputParameters: - type: object mapping: $. - method: PATCH name: microsoftazurewidgetscreateorupdatewidget description: Microsoft Azure Patch Widgets Widgetname call: contoso-widget-manager-widgets.microsoftazurewidgetscreateorupdatewidget with: widgetName: rest.widgetName resource: rest.resource outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazurewidgetsdeletewidget description: Microsoft Azure Delete Widgets Widgetname call: contoso-widget-manager-widgets.microsoftazurewidgetsdeletewidget with: widgetName: rest.widgetName outputParameters: - type: object mapping: $. - path: /v1/widgets/{widgetname}/operations/{operationid} name: widgets-widgetname-operations-operationid description: REST surface for widgets-widgetName-operations-operationId. operations: - method: GET name: microsoftazurewidgetsgetwidgetoperationstatus description: Microsoft Azure Get Widgets Widgetname Operations Operationid call: contoso-widget-manager-widgets.microsoftazurewidgetsgetwidgetoperationstatus with: widgetName: rest.widgetName operationId: rest.operationId outputParameters: - type: object mapping: $. - type: mcp namespace: contoso-widget-manager-widgets-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure Contoso Widget Manager — Widgets. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-get-widgets description: Microsoft Azure Get Widgets hints: readOnly: true destructive: false idempotent: true call: contoso-widget-manager-widgets.microsoftazurewidgetslistwidgets outputParameters: - type: object mapping: $. - name: microsoft-azure-get-widgets-widgetname description: Microsoft Azure Get Widgets Widgetname hints: readOnly: true destructive: false idempotent: true call: contoso-widget-manager-widgets.microsoftazurewidgetsgetwidget with: widgetName: tools.widgetName outputParameters: - type: object mapping: $. - name: microsoft-azure-patch-widgets-widgetname description: Microsoft Azure Patch Widgets Widgetname hints: readOnly: false destructive: false idempotent: true call: contoso-widget-manager-widgets.microsoftazurewidgetscreateorupdatewidget with: widgetName: tools.widgetName resource: tools.resource outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-widgets-widgetname description: Microsoft Azure Delete Widgets Widgetname hints: readOnly: false destructive: true idempotent: true call: contoso-widget-manager-widgets.microsoftazurewidgetsdeletewidget with: widgetName: tools.widgetName outputParameters: - type: object mapping: $. - name: microsoft-azure-get-widgets-widgetname-2 description: Microsoft Azure Get Widgets Widgetname Operations Operationid hints: readOnly: true destructive: false idempotent: true call: contoso-widget-manager-widgets.microsoftazurewidgetsgetwidgetoperationstatus with: widgetName: tools.widgetName operationId: tools.operationId outputParameters: - type: object mapping: $.