naftiko: 1.0.0-alpha2 info: label: Solcast API — PV Power Sites description: 'Solcast API — PV Power Sites. 6 operations. Lead operation: Get PV Power Site. Self-contained Naftiko capability covering one Solcast business surface.' tags: - Solcast - PV Power Sites created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: SOLCAST_API_KEY: SOLCAST_API_KEY capability: consumes: - type: http namespace: solcast-pv-power-sites baseUri: https://api.solcast.com.au description: Solcast API — PV Power Sites business capability. Self-contained, no shared references. resources: - name: resources-pv_power_site path: /resources/pv_power_site operations: - name: getpvpowersite method: GET description: Get PV Power Site outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: resource_id in: query type: string description: Unique identifier for the PV power site. required: true - name: format in: query type: string description: Response format. - name: createpvpowersite method: POST description: Create PV Power Site outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: body in: body type: object description: Request body (JSON). required: true - name: patchpvpowersite method: PATCH description: Patch PV Power Site outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: resource_id in: query type: string description: Unique identifier for the PV power site to update. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: updatepvpowersite method: PUT description: Update PV Power Site outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: resource_id in: query type: string description: Unique identifier for the PV power site to overwrite. required: true - name: body in: body type: object description: Request body (JSON). required: true - name: deletepvpowersite method: DELETE description: Delete PV Power Site outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: resource_id in: query type: string description: Unique identifier for the PV power site to delete. required: true - name: resources-pv_power_sites path: /resources/pv_power_sites operations: - name: listpvpowersites method: GET description: List PV Power Sites outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: format in: query type: string description: Response format. authentication: type: bearer token: '{{env.SOLCAST_API_KEY}}' exposes: - type: rest namespace: solcast-pv-power-sites-rest port: 8080 description: REST adapter for Solcast API — PV Power Sites. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/resources/pv-power-site name: resources-pv-power-site description: REST surface for resources-pv_power_site. operations: - method: GET name: getpvpowersite description: Get PV Power Site call: solcast-pv-power-sites.getpvpowersite with: resource_id: rest.resource_id format: rest.format outputParameters: - type: object mapping: $. - method: POST name: createpvpowersite description: Create PV Power Site call: solcast-pv-power-sites.createpvpowersite with: body: rest.body outputParameters: - type: object mapping: $. - method: PATCH name: patchpvpowersite description: Patch PV Power Site call: solcast-pv-power-sites.patchpvpowersite with: resource_id: rest.resource_id body: rest.body outputParameters: - type: object mapping: $. - method: PUT name: updatepvpowersite description: Update PV Power Site call: solcast-pv-power-sites.updatepvpowersite with: resource_id: rest.resource_id body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deletepvpowersite description: Delete PV Power Site call: solcast-pv-power-sites.deletepvpowersite with: resource_id: rest.resource_id outputParameters: - type: object mapping: $. - path: /v1/resources/pv-power-sites name: resources-pv-power-sites description: REST surface for resources-pv_power_sites. operations: - method: GET name: listpvpowersites description: List PV Power Sites call: solcast-pv-power-sites.listpvpowersites with: format: rest.format outputParameters: - type: object mapping: $. - type: mcp namespace: solcast-pv-power-sites-mcp port: 9090 transport: http description: MCP adapter for Solcast API — PV Power Sites. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-pv-power-site description: Get PV Power Site hints: readOnly: true destructive: false idempotent: true call: solcast-pv-power-sites.getpvpowersite with: resource_id: tools.resource_id format: tools.format outputParameters: - type: object mapping: $. - name: create-pv-power-site description: Create PV Power Site hints: readOnly: false destructive: false idempotent: false call: solcast-pv-power-sites.createpvpowersite with: body: tools.body outputParameters: - type: object mapping: $. - name: patch-pv-power-site description: Patch PV Power Site hints: readOnly: false destructive: false idempotent: true call: solcast-pv-power-sites.patchpvpowersite with: resource_id: tools.resource_id body: tools.body outputParameters: - type: object mapping: $. - name: update-pv-power-site description: Update PV Power Site hints: readOnly: false destructive: false idempotent: true call: solcast-pv-power-sites.updatepvpowersite with: resource_id: tools.resource_id body: tools.body outputParameters: - type: object mapping: $. - name: delete-pv-power-site description: Delete PV Power Site hints: readOnly: false destructive: true idempotent: true call: solcast-pv-power-sites.deletepvpowersite with: resource_id: tools.resource_id outputParameters: - type: object mapping: $. - name: list-pv-power-sites description: List PV Power Sites hints: readOnly: true destructive: false idempotent: true call: solcast-pv-power-sites.listpvpowersites with: format: tools.format outputParameters: - type: object mapping: $.