naftiko: 1.0.0-alpha2 info: label: Maps — Raster description: 'Maps — Raster. 2 operations. Lead operation: Static Image. Self-contained Naftiko capability covering one Tomtom business surface.' tags: - Tomtom - Raster created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: TOMTOM_API_KEY: TOMTOM_API_KEY capability: consumes: - type: http namespace: maps-raster baseUri: https://api.tomtom.com description: Maps — Raster business capability. Self-contained, no shared references. resources: - name: map-versionNumber-staticimage path: /map/{versionNumber}/staticimage operations: - name: get method: GET description: Static Image outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: versionNumber in: path type: integer description: Version of the service to call. The current version is 1. required: true - name: layer in: query type: string description: Layer of image to be rendered. Hybrid and labels - name: style in: query type: string description: Map style to be returned - name: format in: query type: string description: Image format to be returned - name: zoom in: query type: integer description: Zoom level of map image to be returned. - name: center in: query type: string description: Coordinates for the center point of the image. - name: width in: query type: integer description: Width of the resulting image in pixels. Width must be a positive integer between 1 and 8192. - name: height in: query type: integer description: Height of the resulting image in pixels. Height must be a positive integer between 1 and 8192. - name: bbox in: query type: string description: Bounding box for the image, using EPSG:3857 projection (functionally equivalent to EPSG:900910). - name: view in: query type: string description: Geopolitical view. Determines rendering of disputed areas. See the documentation for an explan - name: map-versionNumber-tile-layer-style-zoom-X-Y}.{format path: /map/{versionNumber}/tile/{layer}/{style}/{zoom}/{X}/{Y}.{format} operations: - name: get method: GET description: Tile outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: versionNumber in: path type: integer description: Version of the service to call. The current version is 1. required: true - name: layer in: path type: string description: Layer of tile to be rendered. Hybrid and labels are intended for layering with other data and are only available in png format. required: true - name: style in: path type: string description: Style of tile to be rendered required: true - name: zoom in: path type: integer description: Zoom level of tile to be rendered required: true - name: X in: path type: integer description: x coordinate of tile on zoom grid required: true - name: Y in: path type: integer description: y coordinate of tile on zoom grid required: true - name: format in: path type: string description: Format of the response. required: true - name: tileSize in: query type: integer description: Tile dimensions in pixels. 512 is only available for the main style and basic or labels layers. - name: view in: query type: string description: Geopolitical view. Determines rendering of disputed areas. See the documentation for an expla authentication: type: apikey key: key value: '{{env.TOMTOM_API_KEY}}' placement: query exposes: - type: rest namespace: maps-raster-rest port: 8080 description: REST adapter for Maps — Raster. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/map/{versionnumber}/staticimage name: map-versionnumber-staticimage description: REST surface for map-versionNumber-staticimage. operations: - method: GET name: get description: Static Image call: maps-raster.get with: versionNumber: rest.versionNumber layer: rest.layer style: rest.style format: rest.format zoom: rest.zoom center: rest.center width: rest.width height: rest.height bbox: rest.bbox view: rest.view outputParameters: - type: object mapping: $. - path: /v1/map/{versionnumber}/tile/{layer}/{style}/{zoom}/{x}/{y-format} name: map-versionnumber-tile-layer-style-zoom-x-y-format description: REST surface for map-versionNumber-tile-layer-style-zoom-X-Y}.{format. operations: - method: GET name: get description: Tile call: maps-raster.get with: versionNumber: rest.versionNumber layer: rest.layer style: rest.style zoom: rest.zoom X: rest.X Y: rest.Y format: rest.format tileSize: rest.tileSize view: rest.view outputParameters: - type: object mapping: $. - type: mcp namespace: maps-raster-mcp port: 9090 transport: http description: MCP adapter for Maps — Raster. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: static-image description: Static Image hints: readOnly: true destructive: false idempotent: true call: maps-raster.get with: versionNumber: tools.versionNumber layer: tools.layer style: tools.style format: tools.format zoom: tools.zoom center: tools.center width: tools.width height: tools.height bbox: tools.bbox view: tools.view outputParameters: - type: object mapping: $. - name: tile description: Tile hints: readOnly: true destructive: false idempotent: true call: maps-raster.get with: versionNumber: tools.versionNumber layer: tools.layer style: tools.style zoom: tools.zoom X: tools.X Y: tools.Y format: tools.format tileSize: tools.tileSize view: tools.view outputParameters: - type: object mapping: $.