naftiko: 1.0.0-alpha2 info: label: Microsoft Azure HDInsightJobClient — Job description: 'Microsoft Azure HDInsightJobClient — Job. 16 operations. Lead operation: Microsoft Azure Get Livy Batches. Self-contained Naftiko capability covering one Microsoft Azure business surface.' tags: - Microsoft Azure - Job 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: hdinsightjobclient-job baseUri: '' description: Microsoft Azure HDInsightJobClient — Job business capability. Self-contained, no shared references. resources: - name: livy-batches path: /livy/batches operations: - name: microsoftazurejoblistsparkbatchjob method: GET description: Microsoft Azure Get Livy Batches outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: from in: query type: integer description: Optional param specifying which index the list should begin from. - name: size in: query type: integer description: "Optional param specifying the size of the returned list.\r" - name: microsoftazurejobsubmitsparkbatchjob method: POST description: Microsoft Azure Post Livy Batches outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sparkBatchJobRequest in: body type: string description: Livy compatible batch job request payload. required: true - name: livy-batches-batchId path: /livy/batches/{batchId} operations: - name: microsoftazurejobgetsparkbatchjob method: GET description: Microsoft Azure Get Livy Batches Batchid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: batchId in: path type: integer description: Identifier for the batch job. required: true - name: microsoftazurejobdeletesparkbatch method: DELETE description: Microsoft Azure Delete Livy Batches Batchid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: batchId in: path type: integer description: Identifier for the batch job. required: true - name: livy-batches-batchId-log path: /livy/batches/{batchId}/log operations: - name: microsoftazurejobgetsparkbatchlog method: GET description: Microsoft Azure Get Livy Batches Batchid Log outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: batchId in: path type: integer description: Identifier for the batch job. required: true - name: from in: query type: integer description: Optional param specifying which index the list should begin from. - name: size in: query type: integer description: "Optional param specifying the size of the returned list.\r" - name: livy-batches-batchId-state path: /livy/batches/{batchId}/state operations: - name: microsoftazurejobgetsparkbatchstate method: GET description: Microsoft Azure Get Livy Batches Batchid State outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: batchId in: path type: integer description: Identifier for the batch job. required: true - name: livy-sessions path: /livy/sessions operations: - name: microsoftazurejoblistsparksessionjob method: GET description: Microsoft Azure Get Livy Sessions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: from in: query type: integer description: Optional param specifying which index the list should begin from. - name: size in: query type: integer description: "Optional param specifying the size of the returned list.\r" - name: microsoftazurejobsubmitsparksessionjob method: POST description: Microsoft Azure Post Livy Sessions outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sparkSessionJobRequest in: body type: string description: Livy compatible session job request payload. required: true - name: livy-sessions-sessionId path: /livy/sessions/{sessionId} operations: - name: microsoftazurejobgetsparksessionjob method: GET description: Microsoft Azure Get Livy Sessions Sessionid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: microsoftazurejobdeletesparksessionjob method: DELETE description: Microsoft Azure Delete Livy Sessions Sessionid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: livy-sessions-sessionId-log path: /livy/sessions/{sessionId}/log operations: - name: microsoftazurejobgetsparksessionlog method: GET description: Microsoft Azure Get Livy Sessions Sessionid Log outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session job. required: true - name: from in: query type: integer description: Optional param specifying which index the list should begin from. - name: size in: query type: integer description: "Optional param specifying the size of the returned list.\r" - name: livy-sessions-sessionId-state path: /livy/sessions/{sessionId}/state operations: - name: microsoftazurejobgetsparksessionstate method: GET description: Microsoft Azure Get Livy Sessions Sessionid State outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session job. required: true - name: livy-sessions-sessionId-statements path: /livy/sessions/{sessionId}/statements operations: - name: microsoftazurejoblistsparkstatementjob method: GET description: Microsoft Azure Get Livy Sessions Sessionid Statements outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: microsoftazurejobsubmitsparkstatementjob method: POST description: Microsoft Azure Post Livy Sessions Sessionid Statements outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: sparkStatementRequest in: body type: string description: Livy compatible batch job request payload. required: true - name: livy-sessions-sessionId-statements-statementId path: /livy/sessions/{sessionId}/statements/{statementId} operations: - name: microsoftazurejobgetsparkstatementjob method: GET description: Microsoft Azure Get Livy Sessions Sessionid Statements Statementid outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: statementId in: path type: integer description: Identifier for the statement. required: true - name: livy-sessions-sessionId-statements-statementId-cancel path: /livy/sessions/{sessionId}/statements/{statementId}/cancel operations: - name: microsoftazurejobdeletesparkstatementjob method: POST description: Microsoft Azure Post Livy Sessions Sessionid Statements Statementid Cancel outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: sessionId in: path type: integer description: Identifier for the session. required: true - name: statementId in: path type: integer description: Identifier for the statement. required: true exposes: - type: rest namespace: hdinsightjobclient-job-rest port: 8080 description: REST adapter for Microsoft Azure HDInsightJobClient — Job. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/livy/batches name: livy-batches description: REST surface for livy-batches. operations: - method: GET name: microsoftazurejoblistsparkbatchjob description: Microsoft Azure Get Livy Batches call: hdinsightjobclient-job.microsoftazurejoblistsparkbatchjob with: from: rest.from size: rest.size outputParameters: - type: object mapping: $. - method: POST name: microsoftazurejobsubmitsparkbatchjob description: Microsoft Azure Post Livy Batches call: hdinsightjobclient-job.microsoftazurejobsubmitsparkbatchjob with: sparkBatchJobRequest: rest.sparkBatchJobRequest outputParameters: - type: object mapping: $. - path: /v1/livy/batches/{batchid} name: livy-batches-batchid description: REST surface for livy-batches-batchId. operations: - method: GET name: microsoftazurejobgetsparkbatchjob description: Microsoft Azure Get Livy Batches Batchid call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchjob with: batchId: rest.batchId outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazurejobdeletesparkbatch description: Microsoft Azure Delete Livy Batches Batchid call: hdinsightjobclient-job.microsoftazurejobdeletesparkbatch with: batchId: rest.batchId outputParameters: - type: object mapping: $. - path: /v1/livy/batches/{batchid}/log name: livy-batches-batchid-log description: REST surface for livy-batches-batchId-log. operations: - method: GET name: microsoftazurejobgetsparkbatchlog description: Microsoft Azure Get Livy Batches Batchid Log call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchlog with: batchId: rest.batchId from: rest.from size: rest.size outputParameters: - type: object mapping: $. - path: /v1/livy/batches/{batchid}/state name: livy-batches-batchid-state description: REST surface for livy-batches-batchId-state. operations: - method: GET name: microsoftazurejobgetsparkbatchstate description: Microsoft Azure Get Livy Batches Batchid State call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchstate with: batchId: rest.batchId outputParameters: - type: object mapping: $. - path: /v1/livy/sessions name: livy-sessions description: REST surface for livy-sessions. operations: - method: GET name: microsoftazurejoblistsparksessionjob description: Microsoft Azure Get Livy Sessions call: hdinsightjobclient-job.microsoftazurejoblistsparksessionjob with: from: rest.from size: rest.size outputParameters: - type: object mapping: $. - method: POST name: microsoftazurejobsubmitsparksessionjob description: Microsoft Azure Post Livy Sessions call: hdinsightjobclient-job.microsoftazurejobsubmitsparksessionjob with: sparkSessionJobRequest: rest.sparkSessionJobRequest outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid} name: livy-sessions-sessionid description: REST surface for livy-sessions-sessionId. operations: - method: GET name: microsoftazurejobgetsparksessionjob description: Microsoft Azure Get Livy Sessions Sessionid call: hdinsightjobclient-job.microsoftazurejobgetsparksessionjob with: sessionId: rest.sessionId outputParameters: - type: object mapping: $. - method: DELETE name: microsoftazurejobdeletesparksessionjob description: Microsoft Azure Delete Livy Sessions Sessionid call: hdinsightjobclient-job.microsoftazurejobdeletesparksessionjob with: sessionId: rest.sessionId outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid}/log name: livy-sessions-sessionid-log description: REST surface for livy-sessions-sessionId-log. operations: - method: GET name: microsoftazurejobgetsparksessionlog description: Microsoft Azure Get Livy Sessions Sessionid Log call: hdinsightjobclient-job.microsoftazurejobgetsparksessionlog with: sessionId: rest.sessionId from: rest.from size: rest.size outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid}/state name: livy-sessions-sessionid-state description: REST surface for livy-sessions-sessionId-state. operations: - method: GET name: microsoftazurejobgetsparksessionstate description: Microsoft Azure Get Livy Sessions Sessionid State call: hdinsightjobclient-job.microsoftazurejobgetsparksessionstate with: sessionId: rest.sessionId outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid}/statements name: livy-sessions-sessionid-statements description: REST surface for livy-sessions-sessionId-statements. operations: - method: GET name: microsoftazurejoblistsparkstatementjob description: Microsoft Azure Get Livy Sessions Sessionid Statements call: hdinsightjobclient-job.microsoftazurejoblistsparkstatementjob with: sessionId: rest.sessionId outputParameters: - type: object mapping: $. - method: POST name: microsoftazurejobsubmitsparkstatementjob description: Microsoft Azure Post Livy Sessions Sessionid Statements call: hdinsightjobclient-job.microsoftazurejobsubmitsparkstatementjob with: sessionId: rest.sessionId sparkStatementRequest: rest.sparkStatementRequest outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid}/statements/{statementid} name: livy-sessions-sessionid-statements-statementid description: REST surface for livy-sessions-sessionId-statements-statementId. operations: - method: GET name: microsoftazurejobgetsparkstatementjob description: Microsoft Azure Get Livy Sessions Sessionid Statements Statementid call: hdinsightjobclient-job.microsoftazurejobgetsparkstatementjob with: sessionId: rest.sessionId statementId: rest.statementId outputParameters: - type: object mapping: $. - path: /v1/livy/sessions/{sessionid}/statements/{statementid}/cancel name: livy-sessions-sessionid-statements-statementid-cancel description: REST surface for livy-sessions-sessionId-statements-statementId-cancel. operations: - method: POST name: microsoftazurejobdeletesparkstatementjob description: Microsoft Azure Post Livy Sessions Sessionid Statements Statementid Cancel call: hdinsightjobclient-job.microsoftazurejobdeletesparkstatementjob with: sessionId: rest.sessionId statementId: rest.statementId outputParameters: - type: object mapping: $. - type: mcp namespace: hdinsightjobclient-job-mcp port: 9090 transport: http description: MCP adapter for Microsoft Azure HDInsightJobClient — Job. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: microsoft-azure-get-livy-batches description: Microsoft Azure Get Livy Batches hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejoblistsparkbatchjob with: from: tools.from size: tools.size outputParameters: - type: object mapping: $. - name: microsoft-azure-post-livy-batches description: Microsoft Azure Post Livy Batches hints: readOnly: false destructive: false idempotent: false call: hdinsightjobclient-job.microsoftazurejobsubmitsparkbatchjob with: sparkBatchJobRequest: tools.sparkBatchJobRequest outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-batches-2 description: Microsoft Azure Get Livy Batches Batchid hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchjob with: batchId: tools.batchId outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-livy-batches description: Microsoft Azure Delete Livy Batches Batchid hints: readOnly: false destructive: true idempotent: true call: hdinsightjobclient-job.microsoftazurejobdeletesparkbatch with: batchId: tools.batchId outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-batches-3 description: Microsoft Azure Get Livy Batches Batchid Log hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchlog with: batchId: tools.batchId from: tools.from size: tools.size outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-batches-4 description: Microsoft Azure Get Livy Batches Batchid State hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparkbatchstate with: batchId: tools.batchId outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions description: Microsoft Azure Get Livy Sessions hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejoblistsparksessionjob with: from: tools.from size: tools.size outputParameters: - type: object mapping: $. - name: microsoft-azure-post-livy-sessions description: Microsoft Azure Post Livy Sessions hints: readOnly: false destructive: false idempotent: false call: hdinsightjobclient-job.microsoftazurejobsubmitsparksessionjob with: sparkSessionJobRequest: tools.sparkSessionJobRequest outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions-2 description: Microsoft Azure Get Livy Sessions Sessionid hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparksessionjob with: sessionId: tools.sessionId outputParameters: - type: object mapping: $. - name: microsoft-azure-delete-livy-sessions description: Microsoft Azure Delete Livy Sessions Sessionid hints: readOnly: false destructive: true idempotent: true call: hdinsightjobclient-job.microsoftazurejobdeletesparksessionjob with: sessionId: tools.sessionId outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions-3 description: Microsoft Azure Get Livy Sessions Sessionid Log hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparksessionlog with: sessionId: tools.sessionId from: tools.from size: tools.size outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions-4 description: Microsoft Azure Get Livy Sessions Sessionid State hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparksessionstate with: sessionId: tools.sessionId outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions-5 description: Microsoft Azure Get Livy Sessions Sessionid Statements hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejoblistsparkstatementjob with: sessionId: tools.sessionId outputParameters: - type: object mapping: $. - name: microsoft-azure-post-livy-sessions-2 description: Microsoft Azure Post Livy Sessions Sessionid Statements hints: readOnly: false destructive: false idempotent: false call: hdinsightjobclient-job.microsoftazurejobsubmitsparkstatementjob with: sessionId: tools.sessionId sparkStatementRequest: tools.sparkStatementRequest outputParameters: - type: object mapping: $. - name: microsoft-azure-get-livy-sessions-6 description: Microsoft Azure Get Livy Sessions Sessionid Statements Statementid hints: readOnly: true destructive: false idempotent: true call: hdinsightjobclient-job.microsoftazurejobgetsparkstatementjob with: sessionId: tools.sessionId statementId: tools.statementId outputParameters: - type: object mapping: $. - name: microsoft-azure-post-livy-sessions-3 description: Microsoft Azure Post Livy Sessions Sessionid Statements Statementid Cancel hints: readOnly: false destructive: false idempotent: false call: hdinsightjobclient-job.microsoftazurejobdeletesparkstatementjob with: sessionId: tools.sessionId statementId: tools.statementId outputParameters: - type: object mapping: $.