naftiko: 1.0.0-alpha2 info: label: Microsoft Azure Azure OpenAI — Assistants description: 'Microsoft Azure Azure OpenAI — Assistants. 9 operations. Lead operation: Microsoft Azure Get Assistants. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - Assistants 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-openai-assistants baseUri: '' description: Microsoft Azure Azure OpenAI — Assistants business capability. Self-contained, no shared references. resources: - name: assistants path: /assistants operations: - name: microsoftazurelistassistants method: GET description: Microsoft Azure Get Assistants outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: limit in: query type: integer description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20. - name: order in: query type: string description: Sort order by the created_at timestamp of the objects. asc for ascending order and desc for descending order. - name: after in: query type: string description: A cursor for use in pagination. after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, end - name: before in: query type: string description: A cursor for use in pagination. before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, en - name: microsoftazurecreateassistant method: POST description: Microsoft Azure Post Assistants outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: string required: true - name: assistants-assistantId path: /assistants/{assistantId} operations: - name: microsoftazuregetassistant method: GET description: Microsoft Azure Get Assistants Assistantid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant to retrieve. required: true - name: microsoftazuremodifyassistant method: POST description: Microsoft Azure Post Assistants Assistantid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant to modify. required: true - name: modificationOptions in: body type: string description: The details of the modification to perform on the specified assistant. required: true - name: microsoftazuredeleteassistant method: DELETE description: Microsoft Azure Delete Assistants Assistantid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant to delete. required: true - name: assistants-assistantId-files path: /assistants/{assistantId}/files operations: - name: microsoftazurelistassistantfiles method: GET description: Microsoft Azure Get Assistants Assistantid Files outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant to retrieve the list of attached files for. required: true - name: limit in: query type: integer description: A limit on the number of objects to be returned. Limit can range between 1 and 100, and the default is 20. - name: order in: query type: string description: Sort order by the created_at timestamp of the objects. asc for ascending order and desc for descending order. - name: after in: query type: string description: A cursor for use in pagination. after is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, end - name: before in: query type: string description: A cursor for use in pagination. before is an object ID that defines your place in the list. For instance, if you make a list request and receive 100 objects, en - name: microsoftazurecreateassistantfile method: POST description: Microsoft Azure Post Assistants Assistantid Files outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant to attach the file to. required: true - name: body in: body type: object required: true - name: assistants-assistantId-files-fileId path: /assistants/{assistantId}/files/{fileId} operations: - name: microsoftazuregetassistantfile method: GET description: Microsoft Azure Get Assistants Assistantid Files Fileid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant associated with the attached file. required: true - name: fileId in: path type: string description: The ID of the file to retrieve. required: true - name: microsoftazuredeleteassistantfile method: DELETE description: Microsoft Azure Delete Assistants Assistantid Files Fileid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: assistantId in: path type: string description: The ID of the assistant from which the specified file should be unlinked. required: true - name: fileId in: path type: string description: The ID of the file to unlink from the specified assistant. required: true exposes: - type: rest namespace: azure-openai-assistants-rest port: 8080 description: REST adapter for Microsoft Azure Azure OpenAI — Assistants. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/assistants name: assistants description: REST surface for assistants. operations: - method: GET name: microsoftazurelistassistants description: Microsoft Azure Get Assistants call: azure-openai-assistants.microsoftazurelistassistants with: limit: rest.limit order: rest.order after: rest.after before: rest.before outputParameters: - type: object mapping: $. - method: POST name: microsoftazurecreateassistant description: Microsoft Azure Post Assistants call: azure-openai-assistants.microsoftazurecreateassistant with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/assistants/{assistantid} name: assistants-assistantid description: REST surface for assistants-assistantId. operations: - method: GET name: microsoftazuregetassistant description: Microsoft Azure Get Assistants Assistantid call: azure-openai-assistants.microsoftazuregetassistant with: assistantId: rest.assistantId outputParameters: - type: object mapping: $. - method: POST name: microsoftazuremodifyassistant description: Microsoft Azure Post Assistants Assistantid call: azure-openai-assistants.microsoftazuremodifyassistant with: assistantId: rest.assistantId modificationOptions: rest.modificationOptions outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazuredeleteassistant description: Microsoft Azure Delete Assistants Assistantid call: azure-openai-assistants.microsoftazuredeleteassistant with: assistantId: rest.assistantId outputParameters: - type: object mapping: $. - path: /v1/assistants/{assistantid}/files name: assistants-assistantid-files description: REST surface for assistants-assistantId-files. operations: - method: GET name: microsoftazurelistassistantfiles description: Microsoft Azure Get Assistants Assistantid Files call: azure-openai-assistants.microsoftazurelistassistantfiles with: assistantId: rest.assistantId limit: rest.limit order: rest.order after: rest.after before: rest.before outputParameters: - type: object mapping: $. - method: POST name: microsoftazurecreateassistantfile description: Microsoft Azure Post Assistants Assistantid Files call: azure-openai-assistants.microsoftazurecreateassistantfile with: assistantId: rest.assistantId body: rest.body outputParameters: - type: object mapping: $. - path: /v1/assistants/{assistantid}/files/{fileid} name: assistants-assistantid-files-fileid description: REST surface for assistants-assistantId-files-fileId. operations: - method: GET name: microsoftazuregetassistantfile description: Microsoft Azure Get Assistants Assistantid Files Fileid call: azure-openai-assistants.microsoftazuregetassistantfile with: assistantId: rest.assistantId fileId: rest.fileId outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazuredeleteassistantfile description: Microsoft Azure Delete Assistants Assistantid Files Fileid call: azure-openai-assistants.microsoftazuredeleteassistantfile with: assistantId: rest.assistantId fileId: rest.fileId outputParameters: - type: object mapping: $. - type: mcp namespace: azure-openai-assistants-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure Azure OpenAI — Assistants. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-get-assistants description: Microsoft Azure Get Assistants hints: readOnly: true destructive: false idempotent: true call: azure-openai-assistants.microsoftazurelistassistants with: limit: tools.limit order: tools.order after: tools.after before: tools.before outputParameters: - type: object mapping: $. - name: microsoft-azure-post-assistants description: Microsoft Azure Post Assistants hints: readOnly: false destructive: false idempotent: false call: azure-openai-assistants.microsoftazurecreateassistant with: body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-get-assistants-assistantid description: Microsoft Azure Get Assistants Assistantid hints: readOnly: true destructive: false idempotent: true call: azure-openai-assistants.microsoftazuregetassistant with: assistantId: tools.assistantId outputParameters: - type: object mapping: $. - name: microsoft-azure-post-assistants-assistantid description: Microsoft Azure Post Assistants Assistantid hints: readOnly: false destructive: false idempotent: false call: azure-openai-assistants.microsoftazuremodifyassistant with: assistantId: tools.assistantId modificationOptions: tools.modificationOptions outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-assistants-assistantid description: Microsoft Azure Delete Assistants Assistantid hints: readOnly: false destructive: true idempotent: true call: azure-openai-assistants.microsoftazuredeleteassistant with: assistantId: tools.assistantId outputParameters: - type: object mapping: $. - name: microsoft-azure-get-assistants-assistantid-2 description: Microsoft Azure Get Assistants Assistantid Files hints: readOnly: true destructive: false idempotent: true call: azure-openai-assistants.microsoftazurelistassistantfiles with: assistantId: tools.assistantId limit: tools.limit order: tools.order after: tools.after before: tools.before outputParameters: - type: object mapping: $. - name: microsoft-azure-post-assistants-assistantid-2 description: Microsoft Azure Post Assistants Assistantid Files hints: readOnly: false destructive: false idempotent: false call: azure-openai-assistants.microsoftazurecreateassistantfile with: assistantId: tools.assistantId body: tools.body outputParameters: - type: object mapping: $. - name: microsoft-azure-get-assistants-assistantid-3 description: Microsoft Azure Get Assistants Assistantid Files Fileid hints: readOnly: true destructive: false idempotent: true call: azure-openai-assistants.microsoftazuregetassistantfile with: assistantId: tools.assistantId fileId: tools.fileId outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-assistants-assistantid-2 description: Microsoft Azure Delete Assistants Assistantid Files Fileid hints: readOnly: false destructive: true idempotent: true call: azure-openai-assistants.microsoftazuredeleteassistantfile with: assistantId: tools.assistantId fileId: tools.fileId outputParameters: - type: object mapping: $.