naftiko: 1.0.0-alpha2 info: label: Power BI REST API — Reports description: 'Power BI REST API — Reports. 8 operations. Lead operation: Power Bi List Reports in a Workspace. Self-contained Naftiko capability covering one Power Bi business surface.' tags: - Power Bi - Reports created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: POWER_BI_API_KEY: POWER_BI_API_KEY capability: consumes: - type: http namespace: rest-reports baseUri: https://api.powerbi.com/v1.0/myorg description: Power BI REST API — Reports business capability. Self-contained, no shared references. resources: - name: groups-groupId-reports path: /groups/{groupId}/reports operations: - name: getreportsingroup method: GET description: Power Bi List Reports in a Workspace outputRawFormat: json outputParameters: - name: result type: object value: $. - name: reports path: /reports operations: - name: getreports method: GET description: Power Bi List Reports outputRawFormat: json outputParameters: - name: result type: object value: $. - name: reports-reportId path: /reports/{reportId} operations: - name: getreport method: GET description: Power Bi Get a Report outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deletereport method: DELETE description: Power Bi Delete a Report outputRawFormat: json outputParameters: - name: result type: object value: $. - name: reports-reportId-Clone path: /reports/{reportId}/Clone operations: - name: clonereport method: POST description: Power Bi Clone a Report outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: reports-reportId-Export path: /reports/{reportId}/Export operations: - name: exportreport method: GET description: Power Bi Export a Report outputRawFormat: json outputParameters: - name: result type: object value: $. - name: reports-reportId-Rebind path: /reports/{reportId}/Rebind operations: - name: rebindreport method: POST description: Power Bi Rebind a Report to a Dataset outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: reports-reportId-pages path: /reports/{reportId}/pages operations: - name: getpages method: GET description: Power Bi Get Report Pages outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: bearer token: '{{env.POWER_BI_API_KEY}}' exposes: - type: rest namespace: rest-reports-rest port: 8080 description: REST adapter for Power BI REST API — Reports. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/groups/{groupid}/reports name: groups-groupid-reports description: REST surface for groups-groupId-reports. operations: - method: GET name: getreportsingroup description: Power Bi List Reports in a Workspace call: rest-reports.getreportsingroup outputParameters: - type: object mapping: $. - path: /v1/reports name: reports description: REST surface for reports. operations: - method: GET name: getreports description: Power Bi List Reports call: rest-reports.getreports outputParameters: - type: object mapping: $. - path: /v1/reports/{reportid} name: reports-reportid description: REST surface for reports-reportId. operations: - method: GET name: getreport description: Power Bi Get a Report call: rest-reports.getreport outputParameters: - type: object mapping: $. - method: DELETE name: deletereport description: Power Bi Delete a Report call: rest-reports.deletereport outputParameters: - type: object mapping: $. - path: /v1/reports/{reportid}/clone name: reports-reportid-clone description: REST surface for reports-reportId-Clone. operations: - method: POST name: clonereport description: Power Bi Clone a Report call: rest-reports.clonereport with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/reports/{reportid}/export name: reports-reportid-export description: REST surface for reports-reportId-Export. operations: - method: GET name: exportreport description: Power Bi Export a Report call: rest-reports.exportreport outputParameters: - type: object mapping: $. - path: /v1/reports/{reportid}/rebind name: reports-reportid-rebind description: REST surface for reports-reportId-Rebind. operations: - method: POST name: rebindreport description: Power Bi Rebind a Report to a Dataset call: rest-reports.rebindreport with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/reports/{reportid}/pages name: reports-reportid-pages description: REST surface for reports-reportId-pages. operations: - method: GET name: getpages description: Power Bi Get Report Pages call: rest-reports.getpages outputParameters: - type: object mapping: $. - type: mcp namespace: rest-reports-mcp port: 9090 transport: http description: MCP adapter for Power BI REST API — Reports. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: power-bi-list-reports-workspace description: Power Bi List Reports in a Workspace hints: readOnly: true destructive: false idempotent: true call: rest-reports.getreportsingroup outputParameters: - type: object mapping: $. - name: power-bi-list-reports description: Power Bi List Reports hints: readOnly: true destructive: false idempotent: true call: rest-reports.getreports outputParameters: - type: object mapping: $. - name: power-bi-get-report description: Power Bi Get a Report hints: readOnly: true destructive: false idempotent: true call: rest-reports.getreport outputParameters: - type: object mapping: $. - name: power-bi-delete-report description: Power Bi Delete a Report hints: readOnly: false destructive: true idempotent: true call: rest-reports.deletereport outputParameters: - type: object mapping: $. - name: power-bi-clone-report description: Power Bi Clone a Report hints: readOnly: false destructive: false idempotent: false call: rest-reports.clonereport with: body: tools.body outputParameters: - type: object mapping: $. - name: power-bi-export-report description: Power Bi Export a Report hints: readOnly: true destructive: false idempotent: true call: rest-reports.exportreport outputParameters: - type: object mapping: $. - name: power-bi-rebind-report-dataset description: Power Bi Rebind a Report to a Dataset hints: readOnly: false destructive: false idempotent: false call: rest-reports.rebindreport with: body: tools.body outputParameters: - type: object mapping: $. - name: power-bi-get-report-pages description: Power Bi Get Report Pages hints: readOnly: true destructive: false idempotent: true call: rest-reports.getpages outputParameters: - type: object mapping: $.