US Army Corps of Engineers · Capability
USACE CWMS Data API — Locations
USACE CWMS Data API — Locations. 2 operations. Lead operation: Get Locations. Self-contained Naftiko capability covering one Us Army Corps Of Engineers business surface.
What You Can Do
GET
Getlocations
— Get Locations
/v1/locations
GET
Getlocation
— Get Location by ID
/v1/locations/{location-id}
MCP Tools
get-locations
Get Locations
read-only
idempotent
get-location-id
Get Location by ID
read-only
idempotent
Capability Spec
naftiko: 1.0.0-alpha2
info:
label: USACE CWMS Data API — Locations
description: 'USACE CWMS Data API — Locations. 2 operations. Lead operation: Get Locations. Self-contained Naftiko capability
covering one Us Army Corps Of Engineers business surface.'
tags:
- Us Army Corps Of Engineers
- Locations
created: '2026-05-19'
modified: '2026-05-19'
binds:
- namespace: env
keys:
US_ARMY_CORPS_OF_ENGINEERS_API_KEY: US_ARMY_CORPS_OF_ENGINEERS_API_KEY
capability:
consumes:
- type: http
namespace: usace-cwms-data-locations
baseUri: https://cwms-data.usace.army.mil/cwms-data
description: USACE CWMS Data API — Locations business capability. Self-contained, no shared references.
resources:
- name: locations
path: /locations
operations:
- name: getlocations
method: GET
description: Get Locations
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: names
in: query
type: string
description: Filter by location names (pipe-delimited)
- name: office
in: query
type: string
description: Filter by office identifier
- name: unit
in: query
type: string
description: Unit system for coordinate data (EN or SI)
- name: datum
in: query
type: string
description: Vertical datum for elevation
- name: category-id
in: query
type: string
description: Location category filter
- name: page-size
in: query
type: integer
description: Records per page
- name: page
in: query
type: string
description: Pagination cursor
- name: locations-location-id
path: /locations/{location-id}
operations:
- name: getlocation
method: GET
description: Get Location by ID
outputRawFormat: json
outputParameters:
- name: result
type: object
value: $.
inputParameters:
- name: location-id
in: path
type: string
description: The location identifier
required: true
- name: office
in: query
type: string
description: Office that owns the location
required: true
- name: unit
in: query
type: string
description: Unit system (EN or SI)
- name: datum
in: query
type: string
description: Vertical datum
exposes:
- type: rest
namespace: usace-cwms-data-locations-rest
port: 8080
description: REST adapter for USACE CWMS Data API — Locations. One Spectral-compliant resource per consumed operation,
prefixed with /v1.
resources:
- path: /v1/locations
name: locations
description: REST surface for locations.
operations:
- method: GET
name: getlocations
description: Get Locations
call: usace-cwms-data-locations.getlocations
with:
names: rest.names
office: rest.office
unit: rest.unit
datum: rest.datum
category-id: rest.category-id
page-size: rest.page-size
page: rest.page
outputParameters:
- type: object
mapping: $.
- path: /v1/locations/{location-id}
name: locations-location-id
description: REST surface for locations-location-id.
operations:
- method: GET
name: getlocation
description: Get Location by ID
call: usace-cwms-data-locations.getlocation
with:
location-id: rest.location-id
office: rest.office
unit: rest.unit
datum: rest.datum
outputParameters:
- type: object
mapping: $.
- type: mcp
namespace: usace-cwms-data-locations-mcp
port: 9090
transport: http
description: MCP adapter for USACE CWMS Data API — Locations. One tool per consumed operation, routed inline through this
capability's consumes block.
tools:
- name: get-locations
description: Get Locations
hints:
readOnly: true
destructive: false
idempotent: true
call: usace-cwms-data-locations.getlocations
with:
names: tools.names
office: tools.office
unit: tools.unit
datum: tools.datum
category-id: tools.category-id
page-size: tools.page-size
page: tools.page
outputParameters:
- type: object
mapping: $.
- name: get-location-id
description: Get Location by ID
hints:
readOnly: true
destructive: false
idempotent: true
call: usace-cwms-data-locations.getlocation
with:
location-id: tools.location-id
office: tools.office
unit: tools.unit
datum: tools.datum
outputParameters:
- type: object
mapping: $.