naftiko: 1.0.0-alpha2 info: label: U.S. EPA WaterSense — Treatment Technologies description: 'Treatment Technologies. 6 operations. Lead operation: Treatment Technologies. Self-contained Naftiko capability covering one EPA business surface.' tags: - EPA - Treatment Technologies created: '2026-05-29' modified: '2026-05-29' binds: - namespace: env keys: EPA_USERNAME: EPA_USERNAME capability: consumes: - type: http namespace: elg-search-treatment-technologies baseUri: https://owapps-stage.app.cloud.gov/elg description: U.S. EPA WaterSense — Treatment Technologies business capability. Self-contained, no shared references. authentication: type: basic username: '{{env.EPA_USERNAME}}' password: '{{env.EPA_PASSWORD}}' resources: - name: api-treatmenttechnologies path: /api/treatmentTechnologies operations: - name: getapitreatmenttechnologies method: GET description: Treatment Technologies inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-treatmenttechnologycategories path: /api/treatmentTechnologyCategories operations: - name: getapitreatmenttechnologycategories method: GET description: Treatment Technology Categories inputParameters: [] outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-treatmenttechnology-id path: /api/treatmentTechnology/{id} operations: - name: getapitreatmenttechnologyid method: GET description: Treatment Technology inputParameters: - name: id in: path type: string required: true description: Placeholder. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-treatmenttechnologycategory-id path: /api/treatmentTechnologyCategory/{id} operations: - name: getapitreatmenttechnologycategoryid method: GET description: Treatment Technology Category inputParameters: - name: id in: path type: string required: true description: Placeholder. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-treatmenttechnologylimitations path: /api/treatmentTechnologyLimitations operations: - name: getapitreatmenttechnologylimitations method: GET description: Treatment Technology Limitations inputParameters: - name: id in: query type: string required: true description: Placeholder. - name: treatmentId in: query type: integer required: false description: Placeholder. - name: pointSourceCategoryCode in: query type: integer required: false description: Placeholder. - name: pollutantId in: query type: string required: false description: Placeholder. - name: download in: query type: string required: false description: Placeholder. - name: sortCol in: query type: string required: false description: Placeholder. - name: sortDir in: query type: string required: false description: Placeholder. - name: offset in: query type: integer required: false description: Placeholder. - name: limit in: query type: integer required: false description: Placeholder. outputRawFormat: json outputParameters: - name: result type: object value: $. - name: api-treatmenttechnologycategorylimitations path: /api/treatmentTechnologyCategoryLimitations operations: - name: getapitreatmenttechnologycategorylimitations method: GET description: Treatment Technology Category Limitations inputParameters: - name: id in: query type: string required: true description: Placeholder. - name: treatmentId in: query type: integer required: false description: Placeholder. - name: pointSourceCategoryCode in: query type: integer required: false description: Placeholder. - name: pollutantId in: query type: string required: false description: Placeholder. - name: download in: query type: string required: false description: Placeholder. - name: sortCol in: query type: string required: false description: Placeholder. - name: sortDir in: query type: string required: false description: Placeholder. - name: offset in: query type: integer required: false description: Placeholder. - name: limit in: query type: integer required: false description: Placeholder. outputRawFormat: json outputParameters: - name: result type: object value: $. exposes: - type: rest namespace: elg-search-treatment-technologies-rest port: 8080 description: REST adapter for U.S. EPA WaterSense — Treatment Technologies. One Spectral-compliant resource per consumed operation, prefixed with /v1. resources: - path: /v1/api/treatmenttechnologies name: api-treatmenttechnologies description: REST surface for Treatment Technologies. operations: - method: GET name: getapitreatmenttechnologies description: Treatment Technologies call: elg-search-treatment-technologies.getapitreatmenttechnologies with: {} outputParameters: - type: object mapping: $. - path: /v1/api/treatmenttechnologycategories name: api-treatmenttechnologycategories description: REST surface for Treatment Technology Categories. operations: - method: GET name: getapitreatmenttechnologycategories description: Treatment Technology Categories call: elg-search-treatment-technologies.getapitreatmenttechnologycategories with: {} outputParameters: - type: object mapping: $. - path: /v1/api/treatmenttechnology/{id} name: api-treatmenttechnology-id description: REST surface for Treatment Technology. operations: - method: GET name: getapitreatmenttechnologyid description: Treatment Technology call: elg-search-treatment-technologies.getapitreatmenttechnologyid with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/treatmenttechnologycategory/{id} name: api-treatmenttechnologycategory-id description: REST surface for Treatment Technology Category. operations: - method: GET name: getapitreatmenttechnologycategoryid description: Treatment Technology Category call: elg-search-treatment-technologies.getapitreatmenttechnologycategoryid with: id: rest.id outputParameters: - type: object mapping: $. - path: /v1/api/treatmenttechnologylimitations name: api-treatmenttechnologylimitations description: REST surface for Treatment Technology Limitations. operations: - method: GET name: getapitreatmenttechnologylimitations description: Treatment Technology Limitations call: elg-search-treatment-technologies.getapitreatmenttechnologylimitations with: id: rest.id treatmentId: rest.treatmentId pointSourceCategoryCode: rest.pointSourceCategoryCode pollutantId: rest.pollutantId download: rest.download sortCol: rest.sortCol sortDir: rest.sortDir offset: rest.offset limit: rest.limit outputParameters: - type: object mapping: $. - path: /v1/api/treatmenttechnologycategorylimitations name: api-treatmenttechnologycategorylimitations description: REST surface for Treatment Technology Category Limitations. operations: - method: GET name: getapitreatmenttechnologycategorylimitations description: Treatment Technology Category Limitations call: elg-search-treatment-technologies.getapitreatmenttechnologycategorylimitations with: id: rest.id treatmentId: rest.treatmentId pointSourceCategoryCode: rest.pointSourceCategoryCode pollutantId: rest.pollutantId download: rest.download sortCol: rest.sortCol sortDir: rest.sortDir offset: rest.offset limit: rest.limit outputParameters: - type: object mapping: $. - type: mcp namespace: elg-search-treatment-technologies-mcp port: 9090 transport: http description: MCP adapter for U.S. EPA WaterSense — Treatment Technologies. One tool per consumed operation, routed inline through this capability's consumes block. tools: - name: treatment-technologies description: Treatment Technologies hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologies with: {} outputParameters: - type: object mapping: $. - name: treatment-technology-categories description: Treatment Technology Categories hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologycategories with: {} outputParameters: - type: object mapping: $. - name: treatment-technology description: Treatment Technology hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologyid with: id: tools.id outputParameters: - type: object mapping: $. - name: treatment-technology-category description: Treatment Technology Category hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologycategoryid with: id: tools.id outputParameters: - type: object mapping: $. - name: treatment-technology-limitations description: Treatment Technology Limitations hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologylimitations with: id: tools.id treatmentId: tools.treatmentId pointSourceCategoryCode: tools.pointSourceCategoryCode pollutantId: tools.pollutantId download: tools.download sortCol: tools.sortCol sortDir: tools.sortDir offset: tools.offset limit: tools.limit outputParameters: - type: object mapping: $. - name: treatment-technology-category-limitations description: Treatment Technology Category Limitations hints: readOnly: true destructive: false idempotent: true call: elg-search-treatment-technologies.getapitreatmenttechnologycategorylimitations with: id: tools.id treatmentId: tools.treatmentId pointSourceCategoryCode: tools.pointSourceCategoryCode pollutantId: tools.pollutantId download: tools.download sortCol: tools.sortCol sortDir: tools.sortDir offset: tools.offset limit: tools.limit outputParameters: - type: object mapping: $.