Solcast · Capability

Solcast API — Forecast Data

Solcast API — Forecast Data. 5 operations. Lead operation: Get Forecast Advanced PV Power. Self-contained Naftiko capability covering one Solcast business surface.

Run with Naftiko SolcastForecast Data

What You Can Do

GET
Getforecastadvancedpvpower — Get Forecast Advanced PV Power
/v1/data/forecast/advanced-pv-power
GET
Getforecastradiationandweather — Get Forecast Radiation and Weather
/v1/data/forecast/radiation-and-weather
GET
Getforecastrooftoppvpower — Get Forecast Rooftop PV Power
/v1/data/forecast/rooftop-pv-power
GET
Getforecastsoilinghsu — Get Forecast Soiling (HSU Model)
/v1/data/forecast/soiling/hsu
GET
Getforecastsoilingkimber — Get Forecast Soiling (Kimber Model)
/v1/data/forecast/soiling/kimber

MCP Tools

get-forecast-advanced-pv-power

Get Forecast Advanced PV Power

read-only idempotent
get-forecast-radiation-and-weather

Get Forecast Radiation and Weather

read-only idempotent
get-forecast-rooftop-pv-power

Get Forecast Rooftop PV Power

read-only idempotent
get-forecast-soiling-hsu-model

Get Forecast Soiling (HSU Model)

read-only idempotent
get-forecast-soiling-kimber-model

Get Forecast Soiling (Kimber Model)

read-only idempotent

Capability Spec

solcast-forecast-data.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: Solcast API — Forecast Data
  description: 'Solcast API — Forecast Data. 5 operations. Lead operation: Get Forecast Advanced PV Power. Self-contained
    Naftiko capability covering one Solcast business surface.'
  tags:
  - Solcast
  - Forecast Data
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    SOLCAST_API_KEY: SOLCAST_API_KEY
capability:
  consumes:
  - type: http
    namespace: solcast-forecast-data
    baseUri: https://api.solcast.com.au
    description: Solcast API — Forecast Data business capability. Self-contained, no shared references.
    resources:
    - name: data-forecast-advanced_pv_power
      path: /data/forecast/advanced_pv_power
      operations:
      - name: getforecastadvancedpvpower
        method: GET
        description: Get Forecast Advanced PV Power
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: resource_id
          in: query
          type: string
          description: Unique resource identifier for a registered Solcast PV power site.
          required: true
        - name: hours
          in: query
          type: integer
          description: Number of forecast hours to retrieve (up to 336).
        - name: period
          in: query
          type: string
          description: Time period between data points in ISO 8601 duration format.
        - name: format
          in: query
          type: string
          description: Response format.
    - name: data-forecast-radiation_and_weather
      path: /data/forecast/radiation_and_weather
      operations:
      - name: getforecastradiationandweather
        method: GET
        description: Get Forecast Radiation and Weather
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: latitude
          in: query
          type: number
          description: Latitude in decimal degrees, between -90 and 90 (north positive).
          required: true
        - name: longitude
          in: query
          type: number
          description: Longitude in decimal degrees, between -180 and 180 (east positive).
          required: true
        - name: output_parameters
          in: query
          type: string
          description: Comma-separated list of output parameters to return (e.g., ghi,dni,dhi, air_temp,wind_speed_10m,cloud_opacity,clearsky_ghi).
          required: true
        - name: hours
          in: query
          type: integer
          description: Number of forecast hours to retrieve (up to 336 for 14 days).
        - name: period
          in: query
          type: string
          description: Time period between data points in ISO 8601 duration format.
        - name: format
          in: query
          type: string
          description: Response format.
    - name: data-forecast-rooftop_pv_power
      path: /data/forecast/rooftop_pv_power
      operations:
      - name: getforecastrooftoppvpower
        method: GET
        description: Get Forecast Rooftop PV Power
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: latitude
          in: query
          type: number
          description: Latitude in decimal degrees, between -90 and 90 (north positive).
          required: true
        - name: longitude
          in: query
          type: number
          description: Longitude in decimal degrees, between -180 and 180 (east positive).
          required: true
        - name: capacity
          in: query
          type: number
          description: System capacity in kilowatts.
        - name: tilt
          in: query
          type: number
          description: Panel tilt angle in degrees from horizontal.
        - name: azimuth
          in: query
          type: number
          description: Panel azimuth in degrees.
        - name: output_parameters
          in: query
          type: string
          description: Comma-separated list of output parameters.
          required: true
        - name: hours
          in: query
          type: integer
          description: Number of forecast hours to retrieve (up to 336).
        - name: period
          in: query
          type: string
          description: Time period between data points in ISO 8601 duration format.
        - name: format
          in: query
          type: string
          description: Response format.
    - name: data-forecast-soiling-hsu
      path: /data/forecast/soiling/hsu
      operations:
      - name: getforecastsoilinghsu
        method: GET
        description: Get Forecast Soiling (HSU Model)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: latitude
          in: query
          type: number
          description: Latitude in decimal degrees, between -90 and 90 (north positive).
          required: true
        - name: longitude
          in: query
          type: number
          description: Longitude in decimal degrees, between -180 and 180 (east positive).
          required: true
        - name: depo_veloc_pm10
          in: query
          type: number
          description: Deposition velocity for PM10 particles (m/s).
        - name: initial_soiling
          in: query
          type: number
          description: Initial soiling fraction (0.0 = clean, 1.0 = fully soiled).
        - name: format
          in: query
          type: string
          description: Response format.
    - name: data-forecast-soiling-kimber
      path: /data/forecast/soiling/kimber
      operations:
      - name: getforecastsoilingkimber
        method: GET
        description: Get Forecast Soiling (Kimber Model)
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: latitude
          in: query
          type: number
          description: Latitude in decimal degrees, between -90 and 90 (north positive).
          required: true
        - name: longitude
          in: query
          type: number
          description: Longitude in decimal degrees, between -180 and 180 (east positive).
          required: true
        - name: depo_veloc_pm10
          in: query
          type: number
          description: Deposition velocity for PM10 particles (m/s).
        - name: initial_soiling
          in: query
          type: number
          description: Initial soiling fraction (0.0 = clean, 1.0 = fully soiled).
        - name: format
          in: query
          type: string
          description: Response format.
    authentication:
      type: bearer
      token: '{{env.SOLCAST_API_KEY}}'
  exposes:
  - type: rest
    namespace: solcast-forecast-data-rest
    port: 8080
    description: REST adapter for Solcast API — Forecast Data. One Spectral-compliant resource per consumed operation, prefixed
      with /v1.
    resources:
    - path: /v1/data/forecast/advanced-pv-power
      name: data-forecast-advanced-pv-power
      description: REST surface for data-forecast-advanced_pv_power.
      operations:
      - method: GET
        name: getforecastadvancedpvpower
        description: Get Forecast Advanced PV Power
        call: solcast-forecast-data.getforecastadvancedpvpower
        with:
          resource_id: rest.resource_id
          hours: rest.hours
          period: rest.period
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/forecast/radiation-and-weather
      name: data-forecast-radiation-and-weather
      description: REST surface for data-forecast-radiation_and_weather.
      operations:
      - method: GET
        name: getforecastradiationandweather
        description: Get Forecast Radiation and Weather
        call: solcast-forecast-data.getforecastradiationandweather
        with:
          latitude: rest.latitude
          longitude: rest.longitude
          output_parameters: rest.output_parameters
          hours: rest.hours
          period: rest.period
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/forecast/rooftop-pv-power
      name: data-forecast-rooftop-pv-power
      description: REST surface for data-forecast-rooftop_pv_power.
      operations:
      - method: GET
        name: getforecastrooftoppvpower
        description: Get Forecast Rooftop PV Power
        call: solcast-forecast-data.getforecastrooftoppvpower
        with:
          latitude: rest.latitude
          longitude: rest.longitude
          capacity: rest.capacity
          tilt: rest.tilt
          azimuth: rest.azimuth
          output_parameters: rest.output_parameters
          hours: rest.hours
          period: rest.period
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/forecast/soiling/hsu
      name: data-forecast-soiling-hsu
      description: REST surface for data-forecast-soiling-hsu.
      operations:
      - method: GET
        name: getforecastsoilinghsu
        description: Get Forecast Soiling (HSU Model)
        call: solcast-forecast-data.getforecastsoilinghsu
        with:
          latitude: rest.latitude
          longitude: rest.longitude
          depo_veloc_pm10: rest.depo_veloc_pm10
          initial_soiling: rest.initial_soiling
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/data/forecast/soiling/kimber
      name: data-forecast-soiling-kimber
      description: REST surface for data-forecast-soiling-kimber.
      operations:
      - method: GET
        name: getforecastsoilingkimber
        description: Get Forecast Soiling (Kimber Model)
        call: solcast-forecast-data.getforecastsoilingkimber
        with:
          latitude: rest.latitude
          longitude: rest.longitude
          depo_veloc_pm10: rest.depo_veloc_pm10
          initial_soiling: rest.initial_soiling
          format: rest.format
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: solcast-forecast-data-mcp
    port: 9090
    transport: http
    description: MCP adapter for Solcast API — Forecast Data. One tool per consumed operation, routed inline through this
      capability's consumes block.
    tools:
    - name: get-forecast-advanced-pv-power
      description: Get Forecast Advanced PV Power
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: solcast-forecast-data.getforecastadvancedpvpower
      with:
        resource_id: tools.resource_id
        hours: tools.hours
        period: tools.period
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.
    - name: get-forecast-radiation-and-weather
      description: Get Forecast Radiation and Weather
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: solcast-forecast-data.getforecastradiationandweather
      with:
        latitude: tools.latitude
        longitude: tools.longitude
        output_parameters: tools.output_parameters
        hours: tools.hours
        period: tools.period
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.
    - name: get-forecast-rooftop-pv-power
      description: Get Forecast Rooftop PV Power
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: solcast-forecast-data.getforecastrooftoppvpower
      with:
        latitude: tools.latitude
        longitude: tools.longitude
        capacity: tools.capacity
        tilt: tools.tilt
        azimuth: tools.azimuth
        output_parameters: tools.output_parameters
        hours: tools.hours
        period: tools.period
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.
    - name: get-forecast-soiling-hsu-model
      description: Get Forecast Soiling (HSU Model)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: solcast-forecast-data.getforecastsoilinghsu
      with:
        latitude: tools.latitude
        longitude: tools.longitude
        depo_veloc_pm10: tools.depo_veloc_pm10
        initial_soiling: tools.initial_soiling
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.
    - name: get-forecast-soiling-kimber-model
      description: Get Forecast Soiling (Kimber Model)
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: solcast-forecast-data.getforecastsoilingkimber
      with:
        latitude: tools.latitude
        longitude: tools.longitude
        depo_veloc_pm10: tools.depo_veloc_pm10
        initial_soiling: tools.initial_soiling
        format: tools.format
      outputParameters:
      - type: object
        mapping: $.