naftiko: "1.0.0-alpha2" info: label: "Safe Place — Search" description: 'Safe Place — Search. 2 operation(s). Lead operation: Amadeus Returns Safety Rating for a Given Location and Radius.. Self-contained Naftiko capability covering one Amadeus business surface.' tags: - Amadeus - Travel - Search created: "2026-05-29" modified: "2026-05-29" binds: - namespace: env keys: AMADEUS_TOKEN: AMADEUS_TOKEN capability: consumes: - type: http namespace: safe-place-search baseUri: https://test.api.amadeus.com/v1 description: Safe Place — Search business capability. Self-contained, no shared references. authentication: type: bearer token: '{{env.AMADEUS_TOKEN}}' resources: - name: safety-safety-rated-locations path: /safety/safety-rated-locations operations: - name: getSafetyRanking method: GET description: Amadeus Returns Safety Rating for a Given Location and Radius. inputParameters: - name: latitude in: query type: number required: true description: Latitude (decimal coordinates) - name: longitude in: query type: number required: true description: Longitude (decimal coordinates) - name: radius in: query type: integer required: false description: radius of the search in Kilometer. Can be from 0 to 20, default value is 1 Km. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: safety-safety-rated-locations-by-square path: /safety/safety-rated-locations/by-square operations: - name: getSafetyRankBySquare method: GET description: Amadeus Returns the Safety Rating of a Given Area inputParameters: - name: north in: query type: number required: true description: Latitude north of bounding box (decimal coordinates) - name: west in: query type: number required: true description: Longitude west of bounding box (decimal coordinates) - name: south in: query type: number required: true description: Latitude south of bounding box (decimal coordinates) - name: east in: query type: number required: true description: Longitude east of bounding box (decimal coordinates) outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: safe-place-search-rest port: 8080 description: REST adapter for Safe Place — Search. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/safety/safety-rated-locations name: safety-safety-rated-locations description: REST surface for safety-safety-rated-locations. operations: - method: GET name: getSafetyRanking description: Amadeus Returns Safety Rating for a Given Location and Radius. call: safe-place-search.getSafetyRanking with: latitude: rest.latitude longitude: rest.longitude radius: rest.radius outputParameters: - type: object mapping: $. - path: /v1/safety/safety-rated-locations/by-square name: safety-safety-rated-locations-by-square description: REST surface for safety-safety-rated-locations-by-square. operations: - method: GET name: getSafetyRankBySquare description: Amadeus Returns the Safety Rating of a Given Area call: safe-place-search.getSafetyRankBySquare with: north: rest.north west: rest.west south: rest.south east: rest.east outputParameters: - type: object mapping: $. - type: mcp namespace: safe-place-search-mcp port: 9090 transport: http description: MCP adapter for Safe Place — Search. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: returns-safety-rating-given-location description: Amadeus Returns Safety Rating for a Given Location and Radius. hints: readOnly: true destructive: false idempotent: true call: safe-place-search.getSafetyRanking with: latitude: tools.latitude longitude: tools.longitude radius: tools.radius outputParameters: - type: object mapping: $. - name: returns-safety-rating-given-area description: Amadeus Returns the Safety Rating of a Given Area hints: readOnly: true destructive: false idempotent: true call: safe-place-search.getSafetyRankBySquare with: north: tools.north west: tools.west south: tools.south east: tools.east outputParameters: - type: object mapping: $.