naftiko: 1.0.0-alpha2 info: label: Microsoft Azure BatchServiceClient — Files description: 'Microsoft Azure BatchServiceClient — Files. 8 operations. Lead operation: Microsoft Azure Lists The Files In A Task S Directory On Its Compute Node. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - Files 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: batchserviceclient-files baseUri: '' description: Microsoft Azure BatchServiceClient — Files business capability. Self-contained, no shared references. resources: - name: jobs-jobId-tasks-taskId-files path: /jobs/{jobId}/tasks/{taskId}/files operations: - name: microsoftazurefilelistfromtask method: GET description: Microsoft Azure Lists The Files In A Task S Directory On Its Compute Node outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: jobId in: path type: string description: The ID of the Job that contains the Task. required: true - name: taskId in: path type: string description: The ID of the Task whose files you want to list. required: true - name: $filter in: query type: string description: An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#lis - name: recursive in: query type: boolean description: Whether to list children of the Task directory. This parameter can be used in combination with the filter parameter to list specific type of files. - name: maxresults in: query type: integer description: The maximum number of items to return in the response. A maximum of 1000 files can be returned. - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: jobs-jobId-tasks-taskId-files-filePath path: /jobs/{jobId}/tasks/{taskId}/files/{filePath} operations: - name: microsoftazurefiledeletefromtask method: DELETE description: Microsoft Azure Deletes The Specified Task File From The Compute Node Where The Task Ran outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: jobId in: path type: string description: The ID of the Job that contains the Task. required: true - name: taskId in: path type: string description: The ID of the Task whose file you want to delete. required: true - name: filePath in: path type: string description: The path to the Task file or directory that you want to delete. required: true - name: recursive in: query type: boolean description: Whether to delete children of a directory. If the filePath parameter represents a directory instead of a file, you can set recursive to true to delete the direc - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: microsoftazurefilegetfromtask method: GET description: Microsoft Azure Get Jobs Jobid Tasks Taskid Files Filepath outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: jobId in: path type: string description: The ID of the Job that contains the Task. required: true - name: taskId in: path type: string description: The ID of the Task whose file you want to retrieve. required: true - name: filePath in: path type: string description: The path to the Task file that you want to get the content of. required: true - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: ocp-range in: header type: string description: The byte range to be retrieved. The default is to retrieve the entire file. The format is bytes=startRange-endRange. - name: If-Modified-Since in: header type: string description: 'A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been ' - name: If-Unmodified-Since in: header type: string description: A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not b - name: microsoftazurefilegetpropertiesfromtask method: HEAD description: Microsoft Azure Head Jobs Jobid Tasks Taskid Files Filepath outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: jobId in: path type: string description: The ID of the Job that contains the Task. required: true - name: taskId in: path type: string description: The ID of the Task whose file you want to get the properties of. required: true - name: filePath in: path type: string description: The path to the Task file that you want to get the properties of. required: true - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: If-Modified-Since in: header type: string description: 'A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been ' - name: If-Unmodified-Since in: header type: string description: A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not b - name: pools-poolId-nodes-nodeId-files path: /pools/{poolId}/nodes/{nodeId}/files operations: - name: microsoftazurefilelistfromcomputenode method: GET description: Microsoft Azure Lists All Of The Files In Task Directories On The Specified Compute Node outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: poolId in: path type: string description: The ID of the Pool that contains the Compute Node. required: true - name: nodeId in: path type: string description: The ID of the Compute Node whose files you want to list. required: true - name: $filter in: query type: string description: An OData $filter clause. For more information on constructing this filter, see https://docs.microsoft.com/en-us/rest/api/batchservice/odata-filters-in-batch#lis - name: recursive in: query type: boolean description: Whether to list children of a directory. - name: maxresults in: query type: integer description: The maximum number of items to return in the response. A maximum of 1000 files can be returned. - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: pools-poolId-nodes-nodeId-files-filePath path: /pools/{poolId}/nodes/{nodeId}/files/{filePath} operations: - name: microsoftazurefiledeletefromcomputenode method: DELETE description: Microsoft Azure Deletes The Specified File From The Compute Node outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: poolId in: path type: string description: The ID of the Pool that contains the Compute Node. required: true - name: nodeId in: path type: string description: The ID of the Compute Node from which you want to delete the file. required: true - name: filePath in: path type: string description: The path to the file or directory that you want to delete. required: true - name: recursive in: query type: boolean description: Whether to delete children of a directory. If the filePath parameter represents a directory instead of a file, you can set recursive to true to delete the direc - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: microsoftazurefilegetfromcomputenode method: GET description: Microsoft Azure Get Pools Poolid Nodes Nodeid Files Filepath outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: poolId in: path type: string description: The ID of the Pool that contains the Compute Node. required: true - name: nodeId in: path type: string description: The ID of the Compute Node that contains the file. required: true - name: filePath in: path type: string description: The path to the Compute Node file that you want to get the content of. required: true - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: ocp-range in: header type: string description: The byte range to be retrieved. The default is to retrieve the entire file. The format is bytes=startRange-endRange. - name: If-Modified-Since in: header type: string description: 'A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been ' - name: If-Unmodified-Since in: header type: string description: A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not b - name: microsoftazurefilegetpropertiesfromcomputenode method: HEAD description: Microsoft Azure Head Pools Poolid Nodes Nodeid Files Filepath outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: poolId in: path type: string description: The ID of the Pool that contains the Compute Node. required: true - name: nodeId in: path type: string description: The ID of the Compute Node that contains the file. required: true - name: filePath in: path type: string description: The path to the Compute Node file that you want to get the properties of. required: true - name: timeout in: query type: integer description: The maximum time that the server can spend processing the request, in seconds. The default is 30 seconds. If the value is larger than 30, the default will be us - name: client-request-id in: header type: string description: The caller-generated request identity, in the form of a GUID with no decoration such as curly braces, e.g. 9C4D50EE-2D56-4CD3-8152-34347DC9F2B0. - name: return-client-request-id in: header type: boolean description: Whether the server should return the client-request-id in the response. - name: ocp-date in: header type: string description: The time the request was issued. Client libraries typically set this to the current system clock time; set it explicitly if you are calling the REST API directl - name: If-Modified-Since in: header type: string description: 'A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has been ' - name: If-Unmodified-Since in: header type: string description: A timestamp indicating the last modified time of the resource known to the client. The operation will be performed only if the resource on the service has not b exposes: - type: rest namespace: batchserviceclient-files-rest port: 8080 description: REST adapter for Microsoft Azure BatchServiceClient — Files. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/jobs/{jobid}/tasks/{taskid}/files name: jobs-jobid-tasks-taskid-files description: REST surface for jobs-jobId-tasks-taskId-files. operations: - method: GET name: microsoftazurefilelistfromtask description: Microsoft Azure Lists The Files In A Task S Directory On Its Compute Node call: batchserviceclient-files.microsoftazurefilelistfromtask with: jobId: rest.jobId taskId: rest.taskId $filter: rest.$filter recursive: rest.recursive maxresults: rest.maxresults timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date outputParameters: - type: object mapping: $. - path: /v1/jobs/{jobid}/tasks/{taskid}/files/{filepath} name: jobs-jobid-tasks-taskid-files-filepath description: REST surface for jobs-jobId-tasks-taskId-files-filePath. operations: - method: DELETE name: microsoftazurefiledeletefromtask description: Microsoft Azure Deletes The Specified Task File From The Compute Node Where The Task Ran call: batchserviceclient-files.microsoftazurefiledeletefromtask with: jobId: rest.jobId taskId: rest.taskId filePath: rest.filePath recursive: rest.recursive timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date outputParameters: - type: object mapping: $. - method: GET name: microsoftazurefilegetfromtask description: Microsoft Azure Get Jobs Jobid Tasks Taskid Files Filepath call: batchserviceclient-files.microsoftazurefilegetfromtask with: jobId: rest.jobId taskId: rest.taskId filePath: rest.filePath timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date ocp-range: rest.ocp-range If-Modified-Since: rest.If-Modified-Since If-Unmodified-Since: rest.If-Unmodified-Since outputParameters: - type: object mapping: $. - method: HEAD name: microsoftazurefilegetpropertiesfromtask description: Microsoft Azure Head Jobs Jobid Tasks Taskid Files Filepath call: batchserviceclient-files.microsoftazurefilegetpropertiesfromtask with: jobId: rest.jobId taskId: rest.taskId filePath: rest.filePath timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date If-Modified-Since: rest.If-Modified-Since If-Unmodified-Since: rest.If-Unmodified-Since outputParameters: - type: object mapping: $. - path: /v1/pools/{poolid}/nodes/{nodeid}/files name: pools-poolid-nodes-nodeid-files description: REST surface for pools-poolId-nodes-nodeId-files. operations: - method: GET name: microsoftazurefilelistfromcomputenode description: Microsoft Azure Lists All Of The Files In Task Directories On The Specified Compute Node call: batchserviceclient-files.microsoftazurefilelistfromcomputenode with: poolId: rest.poolId nodeId: rest.nodeId $filter: rest.$filter recursive: rest.recursive maxresults: rest.maxresults timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date outputParameters: - type: object mapping: $. - path: /v1/pools/{poolid}/nodes/{nodeid}/files/{filepath} name: pools-poolid-nodes-nodeid-files-filepath description: REST surface for pools-poolId-nodes-nodeId-files-filePath. operations: - method: DELETE name: microsoftazurefiledeletefromcomputenode description: Microsoft Azure Deletes The Specified File From The Compute Node call: batchserviceclient-files.microsoftazurefiledeletefromcomputenode with: poolId: rest.poolId nodeId: rest.nodeId filePath: rest.filePath recursive: rest.recursive timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date outputParameters: - type: object mapping: $. - method: GET name: microsoftazurefilegetfromcomputenode description: Microsoft Azure Get Pools Poolid Nodes Nodeid Files Filepath call: batchserviceclient-files.microsoftazurefilegetfromcomputenode with: poolId: rest.poolId nodeId: rest.nodeId filePath: rest.filePath timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date ocp-range: rest.ocp-range If-Modified-Since: rest.If-Modified-Since If-Unmodified-Since: rest.If-Unmodified-Since outputParameters: - type: object mapping: $. - method: HEAD name: microsoftazurefilegetpropertiesfromcomputenode description: Microsoft Azure Head Pools Poolid Nodes Nodeid Files Filepath call: batchserviceclient-files.microsoftazurefilegetpropertiesfromcomputenode with: poolId: rest.poolId nodeId: rest.nodeId filePath: rest.filePath timeout: rest.timeout client-request-id: rest.client-request-id return-client-request-id: rest.return-client-request-id ocp-date: rest.ocp-date If-Modified-Since: rest.If-Modified-Since If-Unmodified-Since: rest.If-Unmodified-Since outputParameters: - type: object mapping: $. - type: mcp namespace: batchserviceclient-files-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure BatchServiceClient — Files. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-lists-files-task description: Microsoft Azure Lists The Files In A Task S Directory On Its Compute Node hints: readOnly: true destructive: false idempotent: true call: batchserviceclient-files.microsoftazurefilelistfromtask with: jobId: tools.jobId taskId: tools.taskId $filter: tools.$filter recursive: tools.recursive maxresults: tools.maxresults timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date outputParameters: - type: object mapping: $. - name: microsoft-azure-deletes-specified-task description: Microsoft Azure Deletes The Specified Task File From The Compute Node Where The Task Ran hints: readOnly: false destructive: true idempotent: true call: batchserviceclient-files.microsoftazurefiledeletefromtask with: jobId: tools.jobId taskId: tools.taskId filePath: tools.filePath recursive: tools.recursive timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date outputParameters: - type: object mapping: $. - name: microsoft-azure-get-jobs-jobid description: Microsoft Azure Get Jobs Jobid Tasks Taskid Files Filepath hints: readOnly: true destructive: false idempotent: true call: batchserviceclient-files.microsoftazurefilegetfromtask with: jobId: tools.jobId taskId: tools.taskId filePath: tools.filePath timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date ocp-range: tools.ocp-range If-Modified-Since: tools.If-Modified-Since If-Unmodified-Since: tools.If-Unmodified-Since outputParameters: - type: object mapping: $. - name: microsoft-azure-head-jobs-jobid description: Microsoft Azure Head Jobs Jobid Tasks Taskid Files Filepath hints: readOnly: false destructive: false idempotent: false call: batchserviceclient-files.microsoftazurefilegetpropertiesfromtask with: jobId: tools.jobId taskId: tools.taskId filePath: tools.filePath timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date If-Modified-Since: tools.If-Modified-Since If-Unmodified-Since: tools.If-Unmodified-Since outputParameters: - type: object mapping: $. - name: microsoft-azure-lists-all-files description: Microsoft Azure Lists All Of The Files In Task Directories On The Specified Compute Node hints: readOnly: true destructive: false idempotent: true call: batchserviceclient-files.microsoftazurefilelistfromcomputenode with: poolId: tools.poolId nodeId: tools.nodeId $filter: tools.$filter recursive: tools.recursive maxresults: tools.maxresults timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date outputParameters: - type: object mapping: $. - name: microsoft-azure-deletes-specified-file description: Microsoft Azure Deletes The Specified File From The Compute Node hints: readOnly: false destructive: true idempotent: true call: batchserviceclient-files.microsoftazurefiledeletefromcomputenode with: poolId: tools.poolId nodeId: tools.nodeId filePath: tools.filePath recursive: tools.recursive timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date outputParameters: - type: object mapping: $. - name: microsoft-azure-get-pools-poolid description: Microsoft Azure Get Pools Poolid Nodes Nodeid Files Filepath hints: readOnly: true destructive: false idempotent: true call: batchserviceclient-files.microsoftazurefilegetfromcomputenode with: poolId: tools.poolId nodeId: tools.nodeId filePath: tools.filePath timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date ocp-range: tools.ocp-range If-Modified-Since: tools.If-Modified-Since If-Unmodified-Since: tools.If-Unmodified-Since outputParameters: - type: object mapping: $. - name: microsoft-azure-head-pools-poolid description: Microsoft Azure Head Pools Poolid Nodes Nodeid Files Filepath hints: readOnly: false destructive: false idempotent: false call: batchserviceclient-files.microsoftazurefilegetpropertiesfromcomputenode with: poolId: tools.poolId nodeId: tools.nodeId filePath: tools.filePath timeout: tools.timeout client-request-id: tools.client-request-id return-client-request-id: tools.return-client-request-id ocp-date: tools.ocp-date If-Modified-Since: tools.If-Modified-Since If-Unmodified-Since: tools.If-Unmodified-Since outputParameters: - type: object mapping: $.