EPA — U.S. Environmental Protection Agency · Capability
U.S. EPA WaterSense — Pollutants
Pollutants. 6 operations. Lead operation: Pollutants. Self-contained Naftiko capability covering one EPA business surface.
What You Can Do
GET
Getapipollutants
— Pollutants
/v1/api/pollutants
GET
Getapipollutantcategories
— Pollutant Categories
/v1/api/pollutantcategories
GET
Getapipollutant
— Pollutant
/v1/api/pollutant
GET
Getapipollutantcategory
— Pollutant Category
/v1/api/pollutantcategory
GET
Getapipollutantlimitations
— Pollutant Limitations
/v1/api/pollutantlimitations
GET
Getapilimitation
— Limitation
/v1/api/limitation
MCP Tools
pollutants
Pollutants
read-only
idempotent
pollutant-categories
Pollutant Categories
read-only
idempotent
pollutant
Pollutant
read-only
idempotent
pollutant-category
Pollutant Category
read-only
idempotent
pollutant-limitations
Pollutant Limitations
read-only
idempotent
limitation
Limitation
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: U.S. EPA WaterSense — Pollutants
description: 'Pollutants. 6 operations. Lead operation: Pollutants. Self-contained Naftiko capability covering one EPA business surface.'
tags:
- EPA
- Pollutants
created: '2026-05-29'
modified: '2026-05-29'
binds:
- namespace: env
keys:
EPA_USERNAME: EPA_USERNAME
capability:
consumes:
- type: http
namespace: elg-search-pollutants
baseUri: https://owapps-stage.app.cloud.gov/elg
description: U.S. EPA WaterSense — Pollutants business capability. Self-contained, no shared references.
authentication:
type: basic
username: '{{env.EPA_USERNAME}}'
password: '{{env.EPA_PASSWORD}}'
resources:
- name: api-pollutants
path: /api/pollutants
operations:
- name: getapipollutants
method: GET
description: Pollutants
inputParameters: []
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-pollutantcategories
path: /api/pollutantCategories
operations:
- name: getapipollutantcategories
method: GET
description: Pollutant Categories
inputParameters: []
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-pollutant
path: /api/pollutant
operations:
- name: getapipollutant
method: GET
description: Pollutant
inputParameters:
- name: id
in: query
type: string
required: true
description: Placeholder.
- name: download
in: query
type: string
required: false
description: Placeholder.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-pollutantcategory
path: /api/pollutantCategory
operations:
- name: getapipollutantcategory
method: GET
description: Pollutant Category
inputParameters:
- name: id
in: query
type: integer
required: true
description: Placeholder.
- name: download
in: query
type: string
required: false
description: Placeholder.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-pollutantlimitations
path: /api/pollutantLimitations
operations:
- name: getapipollutantlimitations
method: GET
description: Pollutant Limitations
inputParameters:
- name: pollutantId
in: query
type: integer
required: false
description: Placeholder.
- name: pointSourceCategoryCode
in: query
type: integer
required: false
description: Placeholder.
- name: download
in: query
type: string
required: false
description: Placeholder.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
- name: api-limitation
path: /api/limitation
operations:
- name: getapilimitation
method: GET
description: Limitation
inputParameters:
- name: id
in: query
type: integer
required: true
description: Placeholder.
- name: download
in: query
type: string
required: false
description: Placeholder.
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
exposes:
- type: rest
namespace: elg-search-pollutants-rest
port: 8080
description: REST adapter for U.S. EPA WaterSense — Pollutants. One Spectral-compliant resource per consumed operation, prefixed with /v1.
resources:
- path: /v1/api/pollutants
name: api-pollutants
description: REST surface for Pollutants.
operations:
- method: GET
name: getapipollutants
description: Pollutants
call: elg-search-pollutants.getapipollutants
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/api/pollutantcategories
name: api-pollutantcategories
description: REST surface for Pollutant Categories.
operations:
- method: GET
name: getapipollutantcategories
description: Pollutant Categories
call: elg-search-pollutants.getapipollutantcategories
with: {}
outputParameters:
- type: object
mapping: $.
- path: /v1/api/pollutant
name: api-pollutant
description: REST surface for Pollutant.
operations:
- method: GET
name: getapipollutant
description: Pollutant
call: elg-search-pollutants.getapipollutant
with:
id: rest.id
download: rest.download
outputParameters:
- type: object
mapping: $.
- path: /v1/api/pollutantcategory
name: api-pollutantcategory
description: REST surface for Pollutant Category.
operations:
- method: GET
name: getapipollutantcategory
description: Pollutant Category
call: elg-search-pollutants.getapipollutantcategory
with:
id: rest.id
download: rest.download
outputParameters:
- type: object
mapping: $.
- path: /v1/api/pollutantlimitations
name: api-pollutantlimitations
description: REST surface for Pollutant Limitations.
operations:
- method: GET
name: getapipollutantlimitations
description: Pollutant Limitations
call: elg-search-pollutants.getapipollutantlimitations
with:
pollutantId: rest.pollutantId
pointSourceCategoryCode: rest.pointSourceCategoryCode
download: rest.download
outputParameters:
- type: object
mapping: $.
- path: /v1/api/limitation
name: api-limitation
description: REST surface for Limitation.
operations:
- method: GET
name: getapilimitation
description: Limitation
call: elg-search-pollutants.getapilimitation
with:
id: rest.id
download: rest.download
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: elg-search-pollutants-mcp
port: 9090
transport: http
description: MCP adapter for U.S. EPA WaterSense — Pollutants. One tool per consumed operation, routed inline through this capability's consumes block.
tools:
- name: pollutants
description: Pollutants
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapipollutants
with: {}
outputParameters:
- type: object
mapping: $.
- name: pollutant-categories
description: Pollutant Categories
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapipollutantcategories
with: {}
outputParameters:
- type: object
mapping: $.
- name: pollutant
description: Pollutant
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapipollutant
with:
id: tools.id
download: tools.download
outputParameters:
- type: object
mapping: $.
- name: pollutant-category
description: Pollutant Category
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapipollutantcategory
with:
id: tools.id
download: tools.download
outputParameters:
- type: object
mapping: $.
- name: pollutant-limitations
description: Pollutant Limitations
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapipollutantlimitations
with:
pollutantId: tools.pollutantId
pointSourceCategoryCode: tools.pointSourceCategoryCode
download: tools.download
outputParameters:
- type: object
mapping: $.
- name: limitation
description: Limitation
hints:
readOnly: true
destructive: false
idempotent: true
call: elg-search-pollutants.getapilimitation
with:
id: tools.id
download: tools.download
outputParameters:
- type: object
mapping: $.