naftiko: 1.0.0-alpha2 info: label: Rainbow.AI Tiles API — Tiles description: 'Rainbow.AI Tiles API — Tiles. 2 operations. Lead operation: Get Weather Map Tile. Self-contained Naftiko capability covering one Rainbow Ai business surface.' tags: - Rainbow Ai - Tiles created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: RAINBOW_AI_API_KEY: RAINBOW_AI_API_KEY capability: consumes: - type: http namespace: tiles-tiles baseUri: https://api.rainbow.ai/v1 description: Rainbow.AI Tiles API — Tiles business capability. Self-contained, no shared references. resources: - name: map-tile-z-x-y path: /map/tile/{z}/{x}/{y} operations: - name: getmaptile method: GET description: Get Weather Map Tile outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: z in: path type: integer description: Zoom level (0-18) required: true - name: x in: path type: integer description: Tile X coordinate required: true - name: y in: path type: integer description: Tile Y coordinate required: true - name: timestamp in: query type: string description: ISO 8601 timestamp for the desired forecast time. If omitted, returns the current precipitation tile. - name: layer in: query type: string description: The weather layer type to render - name: map-timestamps path: /map/timestamps operations: - name: getavailabletimestamps method: GET description: Get Available Tile Timestamps outputRawFormat: json outputParameters: - name: result type: object value: $. authentication: type: apikey key: Ocp-Apim-Subscription-Key value: '{{env.RAINBOW_AI_API_KEY}}' placement: header exposes: - type: rest namespace: tiles-tiles-rest port: 8080 description: REST adapter for Rainbow.AI Tiles API — Tiles. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/map/tile/{z}/{x}/{y} name: map-tile-z-x-y description: REST surface for map-tile-z-x-y. operations: - method: GET name: getmaptile description: Get Weather Map Tile call: tiles-tiles.getmaptile with: z: rest.z x: rest.x y: rest.y timestamp: rest.timestamp layer: rest.layer outputParameters: - type: object mapping: $. - path: /v1/map/timestamps name: map-timestamps description: REST surface for map-timestamps. operations: - method: GET name: getavailabletimestamps description: Get Available Tile Timestamps call: tiles-tiles.getavailabletimestamps outputParameters: - type: object mapping: $. - type: mcp namespace: tiles-tiles-mcp port: 9090 transport: http description: MCP adapter for Rainbow.AI Tiles API — Tiles. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: get-weather-map-tile description: Get Weather Map Tile hints: readOnly: true destructive: false idempotent: true call: tiles-tiles.getmaptile with: z: tools.z x: tools.x y: tools.y timestamp: tools.timestamp layer: tools.layer outputParameters: - type: object mapping: $. - name: get-available-tile-timestamps description: Get Available Tile Timestamps hints: readOnly: true destructive: false idempotent: true call: tiles-tiles.getavailabletimestamps outputParameters: - type: object mapping: $.