naftiko: 1.0.0-alpha2 info: label: Elasticsearch REST API — Search description: 'Elasticsearch REST API — Search. 2 operations. Lead operation: Search across all indices. Self-contained Naftiko capability covering one Elastic business surface.' tags: - Elastic - Search created: '2026-05-19' modified: '2026-05-19' binds: - namespace: env keys: ELASTIC_API_KEY: ELASTIC_API_KEY capability: consumes: - type: http namespace: elasticsearch-search baseUri: https://{deployment}.es.{region}.cloud.es.io:9243 description: Elasticsearch REST API — Search business capability. Self-contained, no shared references. resources: - name: _search path: /_search operations: - name: searchallindices method: GET description: Search across all indices outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: q in: query type: string description: Lucene query string - name: size in: query type: integer description: Number of hits to return - name: index-_search path: /{index}/_search operations: - name: searchindex method: GET description: Search a specific index outputRawFormat: json outputParameters: - name: result type: object value: $. inputParameters: - name: index in: path type: string description: Index name or pattern required: true - name: q in: query type: string authentication: type: apikey key: Authorization value: '{{env.ELASTIC_API_KEY}}' placement: header exposes: - type: rest namespace: elasticsearch-search-rest port: 8080 description: REST adapter for Elasticsearch REST API — Search. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/search name: search description: REST surface for _search. operations: - method: GET name: searchallindices description: Search across all indices call: elasticsearch-search.searchallindices with: q: rest.q size: rest.size outputParameters: - type: object mapping: $. - path: /v1/{index}/search name: index-search description: REST surface for index-_search. operations: - method: GET name: searchindex description: Search a specific index call: elasticsearch-search.searchindex with: index: rest.index q: rest.q outputParameters: - type: object mapping: $. - type: mcp namespace: elasticsearch-search-mcp port: 9090 transport: http description: MCP adapter for Elasticsearch REST API — Search. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: search-across-all-indices description: Search across all indices hints: readOnly: true destructive: false idempotent: true call: elasticsearch-search.searchallindices with: q: tools.q size: tools.size outputParameters: - type: object mapping: $. - name: search-specific-index description: Search a specific index hints: readOnly: true destructive: false idempotent: true call: elasticsearch-search.searchindex with: index: tools.index q: tools.q outputParameters: - type: object mapping: $.