U.S. Geological Survey · Capability

USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes

USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes. 2 operations. Lead operation: USGS Count Earthquake Events. Self-contained Naftiko capability covering one U S Geological Survey business surface.

Run with Naftiko U S Geological SurveyEarthquakes

What You Can Do

GET
Countearthquakes — USGS Count Earthquake Events
/v1/count
GET
Queryearthquakes — USGS Query Earthquake Events
/v1/query

MCP Tools

usgs-count-earthquake-events

USGS Count Earthquake Events

read-only idempotent
usgs-query-earthquake-events

USGS Query Earthquake Events

read-only idempotent

Capability Spec

usgs-earthquake-earthquakes.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes
  description: 'USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes. 2 operations. Lead operation: USGS Count
    Earthquake Events. Self-contained Naftiko capability covering one U S Geological Survey business surface.'
  tags:
  - U S Geological Survey
  - Earthquakes
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    U_S_GEOLOGICAL_SURVEY_API_KEY: U_S_GEOLOGICAL_SURVEY_API_KEY
capability:
  consumes:
  - type: http
    namespace: usgs-earthquake-earthquakes
    baseUri: https://earthquake.usgs.gov/fdsnws/event/1
    description: USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes business capability. Self-contained,
      no shared references.
    resources:
    - name: count
      path: /count
      operations:
      - name: countearthquakes
        method: GET
        description: USGS Count Earthquake Events
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: format
          in: query
          type: string
          description: Response format (geojson or text).
        - name: starttime
          in: query
          type: string
          description: Start time in ISO8601 format.
        - name: endtime
          in: query
          type: string
          description: End time in ISO8601 format.
        - name: minmagnitude
          in: query
          type: number
          description: Minimum earthquake magnitude.
        - name: maxmagnitude
          in: query
          type: number
          description: Maximum earthquake magnitude.
        - name: minlatitude
          in: query
          type: number
          description: Minimum latitude for rectangle filter.
        - name: maxlatitude
          in: query
          type: number
          description: Maximum latitude for rectangle filter.
        - name: minlongitude
          in: query
          type: number
          description: Minimum longitude for rectangle filter.
        - name: maxlongitude
          in: query
          type: number
          description: Maximum longitude for rectangle filter.
    - name: query
      path: /query
      operations:
      - name: queryearthquakes
        method: GET
        description: USGS Query Earthquake Events
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: format
          in: query
          type: string
          description: 'Response format. Options: geojson (default), csv, kml, quakeml, text, xml.'
        - name: starttime
          in: query
          type: string
          description: 'Limit events to those occurring after this time. ISO8601 format. Default: NOW minus 30 days.'
        - name: endtime
          in: query
          type: string
          description: 'Limit events to those occurring before this time. ISO8601 format. Default: present.'
        - name: updatedafter
          in: query
          type: string
          description: Return events updated after this ISO8601 timestamp.
        - name: minlatitude
          in: query
          type: number
          description: Minimum latitude for rectangle filter in degrees (-90 to 90).
        - name: maxlatitude
          in: query
          type: number
          description: Maximum latitude for rectangle filter in degrees (-90 to 90).
        - name: minlongitude
          in: query
          type: number
          description: Minimum longitude for rectangle filter in degrees (-360 to 360).
        - name: maxlongitude
          in: query
          type: number
          description: Maximum longitude for rectangle filter in degrees (-360 to 360).
        - name: latitude
          in: query
          type: number
          description: Latitude for circle filter center in degrees (-90 to 90).
        - name: longitude
          in: query
          type: number
          description: Longitude for circle filter center in degrees (-360 to 360).
        - name: maxradius
          in: query
          type: number
          description: Maximum search radius for circle filter in degrees (0 to 180).
        - name: maxradiuskm
          in: query
          type: number
          description: Maximum search radius for circle filter in kilometers (0 to 20001.6).
        - name: minmagnitude
          in: query
          type: number
          description: Minimum earthquake magnitude.
        - name: maxmagnitude
          in: query
          type: number
          description: Maximum earthquake magnitude.
        - name: mindepth
          in: query
          type: number
          description: Minimum event depth in kilometers (-100 to 1000).
        - name: maxdepth
          in: query
          type: number
          description: Maximum event depth in kilometers (-100 to 1000).
        - name: eventid
          in: query
          type: string
          description: Retrieve a specific event by its USGS event identifier.
        - name: limit
          in: query
          type: integer
          description: Maximum number of events to return (1 to 20000).
        - name: offset
          in: query
          type: integer
          description: Starting record number for paginated results (1-based).
        - name: orderby
          in: query
          type: string
          description: Order results by time, time-asc, magnitude, or magnitude-asc.
        - name: catalog
          in: query
          type: string
          description: Filter by earthquake catalog (e.g., us, ci, nc).
        - name: contributor
          in: query
          type: string
          description: Filter by contributing network.
        - name: eventtype
          in: query
          type: string
          description: Filter by event type (earthquake, explosion, quarry blast, etc.).
        - name: alertlevel
          in: query
          type: string
          description: Filter by PAGER alert level (green, yellow, orange, red).
        - name: minsig
          in: query
          type: integer
          description: Minimum significance value (integer, 0+).
        - name: maxsig
          in: query
          type: integer
          description: Maximum significance value.
        - name: reviewstatus
          in: query
          type: string
          description: Filter by review status (automatic or reviewed).
        - name: producttype
          in: query
          type: string
          description: Filter by product type associated with the event (moment-tensor, focal-mechanism, shakemap, losspager,
            dyfi).
        - name: includedeleted
          in: query
          type: string
          description: Include deleted events in results (true, false, or only).
        - name: includeallorigins
          in: query
          type: boolean
          description: Include all origin solutions in results.
        - name: includeallmagnitudes
          in: query
          type: boolean
          description: Include all magnitude estimates in results.
        - name: nodata
          in: query
          type: integer
          description: HTTP status code to return when no data is found (204 or 404).
  exposes:
  - type: rest
    namespace: usgs-earthquake-earthquakes-rest
    port: 8080
    description: REST adapter for USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes. One Spectral-compliant
      resource per consumed operation, prefixed with /v1.
    resources:
    - path: /v1/count
      name: count
      description: REST surface for count.
      operations:
      - method: GET
        name: countearthquakes
        description: USGS Count Earthquake Events
        call: usgs-earthquake-earthquakes.countearthquakes
        with:
          format: rest.format
          starttime: rest.starttime
          endtime: rest.endtime
          minmagnitude: rest.minmagnitude
          maxmagnitude: rest.maxmagnitude
          minlatitude: rest.minlatitude
          maxlatitude: rest.maxlatitude
          minlongitude: rest.minlongitude
          maxlongitude: rest.maxlongitude
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/query
      name: query
      description: REST surface for query.
      operations:
      - method: GET
        name: queryearthquakes
        description: USGS Query Earthquake Events
        call: usgs-earthquake-earthquakes.queryearthquakes
        with:
          format: rest.format
          starttime: rest.starttime
          endtime: rest.endtime
          updatedafter: rest.updatedafter
          minlatitude: rest.minlatitude
          maxlatitude: rest.maxlatitude
          minlongitude: rest.minlongitude
          maxlongitude: rest.maxlongitude
          latitude: rest.latitude
          longitude: rest.longitude
          maxradius: rest.maxradius
          maxradiuskm: rest.maxradiuskm
          minmagnitude: rest.minmagnitude
          maxmagnitude: rest.maxmagnitude
          mindepth: rest.mindepth
          maxdepth: rest.maxdepth
          eventid: rest.eventid
          limit: rest.limit
          offset: rest.offset
          orderby: rest.orderby
          catalog: rest.catalog
          contributor: rest.contributor
          eventtype: rest.eventtype
          alertlevel: rest.alertlevel
          minsig: rest.minsig
          maxsig: rest.maxsig
          reviewstatus: rest.reviewstatus
          producttype: rest.producttype
          includedeleted: rest.includedeleted
          includeallorigins: rest.includeallorigins
          includeallmagnitudes: rest.includeallmagnitudes
          nodata: rest.nodata
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: usgs-earthquake-earthquakes-mcp
    port: 9090
    transport: http
    description: MCP adapter for USGS Earthquake Notifications, Feeds, and Web Services — Earthquakes. One tool per consumed
      operation, routed inline through this capability's consumes block.
    tools:
    - name: usgs-count-earthquake-events
      description: USGS Count Earthquake Events
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: usgs-earthquake-earthquakes.countearthquakes
      with:
        format: tools.format
        starttime: tools.starttime
        endtime: tools.endtime
        minmagnitude: tools.minmagnitude
        maxmagnitude: tools.maxmagnitude
        minlatitude: tools.minlatitude
        maxlatitude: tools.maxlatitude
        minlongitude: tools.minlongitude
        maxlongitude: tools.maxlongitude
      outputParameters:
      - type: object
        mapping: $.
    - name: usgs-query-earthquake-events
      description: USGS Query Earthquake Events
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: usgs-earthquake-earthquakes.queryearthquakes
      with:
        format: tools.format
        starttime: tools.starttime
        endtime: tools.endtime
        updatedafter: tools.updatedafter
        minlatitude: tools.minlatitude
        maxlatitude: tools.maxlatitude
        minlongitude: tools.minlongitude
        maxlongitude: tools.maxlongitude
        latitude: tools.latitude
        longitude: tools.longitude
        maxradius: tools.maxradius
        maxradiuskm: tools.maxradiuskm
        minmagnitude: tools.minmagnitude
        maxmagnitude: tools.maxmagnitude
        mindepth: tools.mindepth
        maxdepth: tools.maxdepth
        eventid: tools.eventid
        limit: tools.limit
        offset: tools.offset
        orderby: tools.orderby
        catalog: tools.catalog
        contributor: tools.contributor
        eventtype: tools.eventtype
        alertlevel: tools.alertlevel
        minsig: tools.minsig
        maxsig: tools.maxsig
        reviewstatus: tools.reviewstatus
        producttype: tools.producttype
        includedeleted: tools.includedeleted
        includeallorigins: tools.includeallorigins
        includeallmagnitudes: tools.includeallmagnitudes
        nodata: tools.nodata
      outputParameters:
      - type: object
        mapping: $.