naftiko: 1.0.0-alpha2 info: label: Tomorrow.io Weather API — Insights description: 'Insights surface of the Tomorrow.io Weather API. 5 operations. Lead operation: Tomorrow.io List Insights. Self-contained Naftiko capability covering one Tomorrow.io business surface.' tags: - Tomorrow.io - Weather - Insights created: '2026-05-30' modified: '2026-05-30' binds: - namespace: env keys: TOMORROW_API_KEY: TOMORROW_API_KEY capability: consumes: - type: http namespace: tomorrow-insights baseUri: https://api.tomorrow.io/v4 description: Tomorrow.io Weather API — Insights business capability. Self-contained, no shared references. authentication: type: apikey key: apikey value: '{{env.TOMORROW_API_KEY}}' placement: query resources: - name: insights path: /insights operations: - name: listInsights method: GET description: Tomorrow.io List Insights inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. - name: createInsight method: POST description: Tomorrow.io Create Insight inputParameters: - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: insights-insight-id path: /insights/{insightId} operations: - name: getInsight method: GET description: Tomorrow.io Get Insight inputParameters: - name: insightId in: path type: string required: true description: insightId outputRawFormat: json outputParameters: - name: result type: object value: $. - name: updateInsight method: PUT description: Tomorrow.io Update Insight inputParameters: - name: insightId in: path type: string required: true description: insightId - name: body in: body type: object required: true description: Request body payload. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: deleteInsight method: DELETE description: Tomorrow.io Delete Insight inputParameters: - name: insightId in: path type: string required: true description: insightId outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: tomorrow-insights-rest port: 8080 description: REST adapter for Tomorrow.io Weather API — Insights. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/insights name: insights description: REST surface for insights. operations: - method: GET name: listInsights description: Tomorrow.io List Insights call: tomorrow-insights.listInsights with: {} outputParameters: - type: object mapping: $. - method: POST name: createInsight description: Tomorrow.io Create Insight call: tomorrow-insights.createInsight with: body: rest.body outputParameters: - type: object mapping: $. - path: /v1/insights/{insightId} name: insights-insight-id description: REST surface for insights-insight-id. operations: - method: GET name: getInsight description: Tomorrow.io Get Insight call: tomorrow-insights.getInsight with: insightId: rest.insightId outputParameters: - type: object mapping: $. - method: PUT name: updateInsight description: Tomorrow.io Update Insight call: tomorrow-insights.updateInsight with: insightId: rest.insightId body: rest.body outputParameters: - type: object mapping: $. - method: DELETE name: deleteInsight description: Tomorrow.io Delete Insight call: tomorrow-insights.deleteInsight with: insightId: rest.insightId outputParameters: - type: object mapping: $. - type: mcp namespace: tomorrow-insights-mcp port: 9090 transport: http description: MCP adapter for Tomorrow.io Weather API — Insights. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: io-list-insights description: Tomorrow.io List Insights hints: readOnly: true destructive: false idempotent: true call: tomorrow-insights.listInsights with: {} outputParameters: - type: object mapping: $. - name: io-create-insight description: Tomorrow.io Create Insight hints: readOnly: false destructive: false idempotent: false call: tomorrow-insights.createInsight with: body: tools.body outputParameters: - type: object mapping: $. - name: io-get-insight description: Tomorrow.io Get Insight hints: readOnly: true destructive: false idempotent: true call: tomorrow-insights.getInsight with: insightId: tools.insightId outputParameters: - type: object mapping: $. - name: io-update-insight description: Tomorrow.io Update Insight hints: readOnly: false destructive: false idempotent: true call: tomorrow-insights.updateInsight with: insightId: tools.insightId body: tools.body outputParameters: - type: object mapping: $. - name: io-delete-insight description: Tomorrow.io Delete Insight hints: readOnly: false destructive: true idempotent: true call: tomorrow-insights.deleteInsight with: insightId: tools.insightId outputParameters: - type: object mapping: $.