naftiko: 1.0.0-alpha2 info: label: WattTime API — Emissions Data description: 'WattTime API — Emissions Data. 2 operations. Lead operation: WattTime Get Historical Emissions Data. Self-contained Naftiko capability covering one Watttime business surface.' tags: - Watttime - Emissions Data created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: WATTTIME_API_KEY: WATTTIME_API_KEY capability: consumes: - type: http namespace: watttime-emissions-data baseUri: https://api.watttime.org/v3 description: WattTime API — Emissions Data business capability. Self-contained, no shared references. resources: - name: data path: /data operations: - name: gethistoricaldata method: GET description: WattTime Get Historical Emissions Data outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: region in: query type: string description: Grid region identifier (e.g., CAISO_NORTH). Obtain from /region-from-loc or /my-access. required: true - name: signal_type in: query type: string description: 'The emissions signal type to retrieve. Valid values: co2_moer, co2_aoer, health_damage.' required: true - name: start in: query type: string description: Start of the time window in ISO 8601 format (UTC). Maximum window is 32 days. required: true - name: end in: query type: string description: End of the time window in ISO 8601 format (UTC). required: true - name: model in: query type: string description: Model version date to use (e.g., 2026-03-01). Defaults to the latest available model for the region. - name: historical path: /historical operations: - name: downloadhistoricaldata method: GET description: WattTime Download Historical Emissions CSV outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: region in: query type: string description: Grid region identifier (e.g., CAISO_NORTH). required: true - name: signal_type in: query type: string description: The emissions signal type. required: true - name: start in: query type: string description: Start date for historical data download (YYYY-MM-DD). - name: end in: query type: string description: End date for historical data download (YYYY-MM-DD). - name: model in: query type: string description: Model version date. authentication: type: bearer token: '{{env.WATTTIME_API_KEY}}' exposes: - type: rest namespace: watttime-emissions-data-rest port: 8080 description: REST adapter for WattTime API — Emissions Data. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/data name: data description: REST surface for data. operations: - method: GET name: gethistoricaldata description: WattTime Get Historical Emissions Data call: watttime-emissions-data.gethistoricaldata with: region: rest.region signal_type: rest.signal_type start: rest.start end: rest.end model: rest.model outputParameters: - type: object mapping: $. - path: /v1/historical name: historical description: REST surface for historical. operations: - method: GET name: downloadhistoricaldata description: WattTime Download Historical Emissions CSV call: watttime-emissions-data.downloadhistoricaldata with: region: rest.region signal_type: rest.signal_type start: rest.start end: rest.end model: rest.model outputParameters: - type: object mapping: $. - type: mcp namespace: watttime-emissions-data-mcp port: 9090 transport: http description: MCP adapter for WattTime API — Emissions Data. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: watttime-get-historical-emissions-data description: WattTime Get Historical Emissions Data hints: readOnly: true destructive: false idempotent: true call: watttime-emissions-data.gethistoricaldata with: region: tools.region signal_type: tools.signal_type start: tools.start end: tools.end model: tools.model outputParameters: - type: object mapping: $. - name: watttime-download-historical-emissions-csv description: WattTime Download Historical Emissions CSV hints: readOnly: true destructive: false idempotent: true call: watttime-emissions-data.downloadhistoricaldata with: region: tools.region signal_type: tools.signal_type start: tools.start end: tools.end model: tools.model outputParameters: - type: object mapping: $.