U.S. EPA Enforcement and Compliance History Online (ECHO) - Effluent Charting and Reporting — Effluent Charts

Effluent Charts. 6 operations. Lead operation: Effluent Charts Download Service. Self-contained Naftiko capability covering one EPA business surface.

Run with Naftiko EPAEffluent Charts

What You Can Do

GET
Geteffrestservicesdownloadeffluentchart — Effluent Charts Download Service
/v1/eff_rest_services.download_effluent_chart
POST
Posteffrestservicesdownloadeffluentchart — Effluent Charts Download Service
/v1/eff_rest_services.download_effluent_chart
GET
Geteffrestservicesgeteffluentchart — Detailed Effluent Chart Service
/v1/eff_rest_services.get_effluent_chart
POST
Posteffrestservicesgeteffluentchart — Detailed Effluent Chart Service
/v1/eff_rest_services.get_effluent_chart
GET
Geteffrestservicesgetsummarychart — Summary Effluent Chart Service
/v1/eff_rest_services.get_summary_chart
POST
Posteffrestservicesgetsummarychart — Summary Effluent Chart Service
/v1/eff_rest_services.get_summary_chart

MCP Tools

effluent-charts-download-service

Effluent Charts Download Service

read-only idempotent
effluent-charts-download-service-2

Effluent Charts Download Service

detailed-effluent-chart-service

Detailed Effluent Chart Service

read-only idempotent
detailed-effluent-chart-service-2

Detailed Effluent Chart Service

summary-effluent-chart-service

Summary Effluent Chart Service

read-only idempotent
summary-effluent-chart-service-2

Summary Effluent Chart Service

Capability Spec

echo-effluent-effluent-charts.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: U.S. EPA Enforcement and Compliance History Online (ECHO) - Effluent Charting and Reporting — Effluent Charts
  description: 'Effluent Charts. 6 operations. Lead operation: Effluent Charts Download Service. Self-contained Naftiko capability covering one EPA business surface.'
  tags:
    - EPA
    - Effluent Charts
  created: '2026-05-29'
  modified: '2026-05-29'
binds:
  - namespace: env
    keys: {}
capability:
  consumes:
    - type: http
      namespace: echo-effluent-effluent-charts
      baseUri: https://echodata.epa.gov/echo
      description: U.S. EPA Enforcement and Compliance History Online (ECHO) - Effluent Charting and Reporting — Effluent Charts business capability. Self-contained, no shared references.
      resources:
        - name: eff-rest-services-download-effluent-chart
          path: /eff_rest_services.download_effluent_chart
          operations:
            - name: geteffrestservicesdownloadeffluentchart
              method: GET
              description: Effluent Charts Download Service
              inputParameters:
                - name: p_id
                  in: query
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: outfall
                  in: query
                  type: string
                  required: false
                  description: Three-character code that identifies the point of discharge (e.g., pipe or outfall) for a facility. A single NPDES ID may have multiple points of discharge.
                - name: parameter_code
                  in: query
                  type: string
                  required: false
                  description: Five-digit numeric code identifying the parameter. See Parameter Lookup documentation for a complete list of codes.
                - name: start_date
                  in: query
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: query
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: eff-rest-services-download-effluent-chart
          path: /eff_rest_services.download_effluent_chart
          operations:
            - name: posteffrestservicesdownloadeffluentchart
              method: POST
              description: Effluent Charts Download Service
              inputParameters:
                - name: p_id
                  in: formData
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: outfall
                  in: formData
                  type: string
                  required: false
                  description: Three-character code that identifies the point of discharge (e.g., pipe or outfall) for a facility. A single NPDES ID may have multiple points of discharge.
                - name: parameter_code
                  in: formData
                  type: string
                  required: false
                  description: Five-digit numeric code identifying the parameter. See Parameter Lookup documentation for a complete list of codes.
                - name: start_date
                  in: formData
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: formData
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: eff-rest-services-get-effluent-chart
          path: /eff_rest_services.get_effluent_chart
          operations:
            - name: geteffrestservicesgeteffluentchart
              method: GET
              description: Detailed Effluent Chart Service
              inputParameters:
                - name: p_id
                  in: query
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: outfall
                  in: query
                  type: string
                  required: false
                  description: Three-character code that identifies the point of discharge (e.g., pipe or outfall) for a facility. A single NPDES ID may have multiple points of discharge.
                - name: parameter_code
                  in: query
                  type: string
                  required: false
                  description: Five-digit numeric code identifying the parameter. See Parameter Lookup documentation for a complete list of codes.
                - name: start_date
                  in: query
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: query
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: output
                  in: query
                  type: string
                  required: false
                  description: "Output Format Flag.  Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
                - name: callback
                  in: query
                  type: string
                  required: false
                  description: JSONP Callback.  For use with JSONP and GEOJSONP output only.  Enter a name of the function in which to wrap the JSON response.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: eff-rest-services-get-effluent-chart
          path: /eff_rest_services.get_effluent_chart
          operations:
            - name: posteffrestservicesgeteffluentchart
              method: POST
              description: Detailed Effluent Chart Service
              inputParameters:
                - name: p_id
                  in: formData
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: outfall
                  in: formData
                  type: string
                  required: false
                  description: Three-character code that identifies the point of discharge (e.g., pipe or outfall) for a facility. A single NPDES ID may have multiple points of discharge.
                - name: parameter_code
                  in: formData
                  type: string
                  required: false
                  description: Five-digit numeric code identifying the parameter. See Parameter Lookup documentation for a complete list of codes.
                - name: start_date
                  in: formData
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: formData
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: output
                  in: formData
                  type: string
                  required: false
                  description: "Output Format Flag.  Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
                - name: callback
                  in: formData
                  type: string
                  required: false
                  description: JSONP Callback.  For use with JSONP and GEOJSONP output only.  Enter a name of the function in which to wrap the JSON response.
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: eff-rest-services-get-summary-chart
          path: /eff_rest_services.get_summary_chart
          operations:
            - name: geteffrestservicesgetsummarychart
              method: GET
              description: Summary Effluent Chart Service
              inputParameters:
                - name: p_id
                  in: query
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: output
                  in: query
                  type: string
                  required: false
                  description: "Output Format Flag.  Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
                - name: callback
                  in: query
                  type: string
                  required: false
                  description: JSONP Callback.  For use with JSONP and GEOJSONP output only.  Enter a name of the function in which to wrap the JSON response.
                - name: start_date
                  in: query
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: query
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
        - name: eff-rest-services-get-summary-chart
          path: /eff_rest_services.get_summary_chart
          operations:
            - name: posteffrestservicesgetsummarychart
              method: POST
              description: Summary Effluent Chart Service
              inputParameters:
                - name: p_id
                  in: formData
                  type: string
                  required: true
                  description: Identifier for the service.
                - name: output
                  in: formData
                  type: string
                  required: false
                  description: "Output Format Flag.  Enter one of the following keywords:\n- JSON = Data model formatted as Javascript Object Notation (default).\n- JSONP = Data model formatted as Javascript Object Notation with Paddi"
                - name: callback
                  in: formData
                  type: string
                  required: false
                  description: JSONP Callback.  For use with JSONP and GEOJSONP output only.  Enter a name of the function in which to wrap the JSON response.
                - name: start_date
                  in: formData
                  type: string
                  required: false
                  description: The start date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with end_date. If start_date and end_date are not specified, the service will return the last three years of dat
                - name: end_date
                  in: formData
                  type: string
                  required: false
                  description: The end date (mm/dd/yyyy) for the date range of interest. Must be used in conjunction with start_date. If start_date and end_date are not specified, the service will return the last three years of dat
              outputRawFormat: json
              outputParameters:
                - name: result
                  type: object
                  value: $.
  exposes:
    - type: rest
      namespace: echo-effluent-effluent-charts-rest
      port: 8080
      description: REST adapter for U.S. EPA Enforcement and Compliance History Online (ECHO) - Effluent Charting and Reporting — Effluent Charts. One Spectral-compliant resource per consumed operation, prefixed with /v1.
      resources:
        - path: /v1/eff_rest_services.download_effluent_chart
          name: eff-rest-services-download-effluent-chart
          description: REST surface for Effluent Charts Download Service.
          operations:
            - method: GET
              name: geteffrestservicesdownloadeffluentchart
              description: Effluent Charts Download Service
              call: echo-effluent-effluent-charts.geteffrestservicesdownloadeffluentchart
              with:
                p_id: rest.p_id
                outfall: rest.outfall
                parameter_code: rest.parameter_code
                start_date: rest.start_date
                end_date: rest.end_date
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/eff_rest_services.download_effluent_chart
          name: eff-rest-services-download-effluent-chart
          description: REST surface for Effluent Charts Download Service.
          operations:
            - method: POST
              name: posteffrestservicesdownloadeffluentchart
              description: Effluent Charts Download Service
              call: echo-effluent-effluent-charts.posteffrestservicesdownloadeffluentchart
              with:
                p_id: rest.p_id
                outfall: rest.outfall
                parameter_code: rest.parameter_code
                start_date: rest.start_date
                end_date: rest.end_date
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/eff_rest_services.get_effluent_chart
          name: eff-rest-services-get-effluent-chart
          description: REST surface for Detailed Effluent Chart Service.
          operations:
            - method: GET
              name: geteffrestservicesgeteffluentchart
              description: Detailed Effluent Chart Service
              call: echo-effluent-effluent-charts.geteffrestservicesgeteffluentchart
              with:
                p_id: rest.p_id
                outfall: rest.outfall
                parameter_code: rest.parameter_code
                start_date: rest.start_date
                end_date: rest.end_date
                output: rest.output
                callback: rest.callback
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/eff_rest_services.get_effluent_chart
          name: eff-rest-services-get-effluent-chart
          description: REST surface for Detailed Effluent Chart Service.
          operations:
            - method: POST
              name: posteffrestservicesgeteffluentchart
              description: Detailed Effluent Chart Service
              call: echo-effluent-effluent-charts.posteffrestservicesgeteffluentchart
              with:
                p_id: rest.p_id
                outfall: rest.outfall
                parameter_code: rest.parameter_code
                start_date: rest.start_date
                end_date: rest.end_date
                output: rest.output
                callback: rest.callback
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/eff_rest_services.get_summary_chart
          name: eff-rest-services-get-summary-chart
          description: REST surface for Summary Effluent Chart Service.
          operations:
            - method: GET
              name: geteffrestservicesgetsummarychart
              description: Summary Effluent Chart Service
              call: echo-effluent-effluent-charts.geteffrestservicesgetsummarychart
              with:
                p_id: rest.p_id
                output: rest.output
                callback: rest.callback
                start_date: rest.start_date
                end_date: rest.end_date
              outputParameters:
                - type: object
                  mapping: $.
        - path: /v1/eff_rest_services.get_summary_chart
          name: eff-rest-services-get-summary-chart
          description: REST surface for Summary Effluent Chart Service.
          operations:
            - method: POST
              name: posteffrestservicesgetsummarychart
              description: Summary Effluent Chart Service
              call: echo-effluent-effluent-charts.posteffrestservicesgetsummarychart
              with:
                p_id: rest.p_id
                output: rest.output
                callback: rest.callback
                start_date: rest.start_date
                end_date: rest.end_date
              outputParameters:
                - type: object
                  mapping: $.
    - type: mcp
      namespace: echo-effluent-effluent-charts-mcp
      port: 9090
      transport: http
      description: MCP adapter for U.S. EPA Enforcement and Compliance History Online (ECHO) - Effluent Charting and Reporting — Effluent Charts. One tool per consumed operation, routed inline through this capability's consumes block.
      tools:
        - name: effluent-charts-download-service
          description: Effluent Charts Download Service
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: echo-effluent-effluent-charts.geteffrestservicesdownloadeffluentchart
          with:
            p_id: tools.p_id
            outfall: tools.outfall
            parameter_code: tools.parameter_code
            start_date: tools.start_date
            end_date: tools.end_date
          outputParameters:
            - type: object
              mapping: $.
        - name: effluent-charts-download-service-2
          description: Effluent Charts Download Service
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: echo-effluent-effluent-charts.posteffrestservicesdownloadeffluentchart
          with:
            p_id: tools.p_id
            outfall: tools.outfall
            parameter_code: tools.parameter_code
            start_date: tools.start_date
            end_date: tools.end_date
          outputParameters:
            - type: object
              mapping: $.
        - name: detailed-effluent-chart-service
          description: Detailed Effluent Chart Service
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: echo-effluent-effluent-charts.geteffrestservicesgeteffluentchart
          with:
            p_id: tools.p_id
            outfall: tools.outfall
            parameter_code: tools.parameter_code
            start_date: tools.start_date
            end_date: tools.end_date
            output: tools.output
            callback: tools.callback
          outputParameters:
            - type: object
              mapping: $.
        - name: detailed-effluent-chart-service-2
          description: Detailed Effluent Chart Service
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: echo-effluent-effluent-charts.posteffrestservicesgeteffluentchart
          with:
            p_id: tools.p_id
            outfall: tools.outfall
            parameter_code: tools.parameter_code
            start_date: tools.start_date
            end_date: tools.end_date
            output: tools.output
            callback: tools.callback
          outputParameters:
            - type: object
              mapping: $.
        - name: summary-effluent-chart-service
          description: Summary Effluent Chart Service
          hints:
            readOnly: true
            destructive: false
            idempotent: true
          call: echo-effluent-effluent-charts.geteffrestservicesgetsummarychart
          with:
            p_id: tools.p_id
            output: tools.output
            callback: tools.callback
            start_date: tools.start_date
            end_date: tools.end_date
          outputParameters:
            - type: object
              mapping: $.
        - name: summary-effluent-chart-service-2
          description: Summary Effluent Chart Service
          hints:
            readOnly: false
            destructive: false
            idempotent: false
          call: echo-effluent-effluent-charts.posteffrestservicesgetsummarychart
          with:
            p_id: tools.p_id
            output: tools.output
            callback: tools.callback
            start_date: tools.start_date
            end_date: tools.end_date
          outputParameters:
            - type: object
              mapping: $.