US Geological Survey · Capability

USGS Earthquake Catalog API — Earthquakes

USGS Earthquake Catalog API — Earthquakes. 2 operations. Lead operation: Count Earthquake Events. Self-contained Naftiko capability covering one Us Geological Survey business surface.

Run with Naftiko Us Geological SurveyEarthquakes

What You Can Do

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

MCP Tools

count-earthquake-events

Count Earthquake Events

read-only idempotent
query-earthquake-catalog

Query Earthquake Catalog

read-only idempotent

Capability Spec

usgs-earthquake-catalog-earthquakes.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: USGS Earthquake Catalog API — Earthquakes
  description: 'USGS Earthquake Catalog API — Earthquakes. 2 operations. Lead operation: Count Earthquake Events. Self-contained
    Naftiko capability covering one Us Geological Survey business surface.'
  tags:
  - Us Geological Survey
  - Earthquakes
  created: '2026-05-19'
  modified: '2026-05-19'
binds:
- namespace: env
  keys:
    US_GEOLOGICAL_SURVEY_API_KEY: US_GEOLOGICAL_SURVEY_API_KEY
capability:
  consumes:
  - type: http
    namespace: usgs-earthquake-catalog-earthquakes
    baseUri: https://earthquake.usgs.gov/fdsnws/event/1
    description: USGS Earthquake Catalog API — Earthquakes business capability. Self-contained, no shared references.
    resources:
    - name: count
      path: /count
      operations:
      - name: countearthquakes
        method: GET
        description: Count Earthquake Events
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: format
          in: query
          type: string
          description: Output format
        - name: starttime
          in: query
          type: string
          description: Limit results to events on or after this date/time (ISO8601)
        - name: endtime
          in: query
          type: string
          description: Limit results to events on or before this date/time (ISO8601)
        - name: minlatitude
          in: query
          type: number
          description: Minimum latitude boundary
        - name: maxlatitude
          in: query
          type: number
          description: Maximum latitude boundary
        - name: minlongitude
          in: query
          type: number
          description: Minimum longitude boundary
        - name: maxlongitude
          in: query
          type: number
          description: Maximum longitude boundary
        - name: minmagnitude
          in: query
          type: number
          description: Minimum magnitude filter
        - name: maxmagnitude
          in: query
          type: number
          description: Maximum magnitude filter
    - name: query
      path: /query
      operations:
      - name: queryearthquakes
        method: GET
        description: Query Earthquake Catalog
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
        inputParameters:
        - name: format
          in: query
          type: string
          description: Output format for the response
        - name: starttime
          in: query
          type: string
          description: Limit results to events on or after this UTC date/time (ISO8601)
        - name: endtime
          in: query
          type: string
          description: Limit results to events on or before this UTC date/time (ISO8601)
        - name: updatedafter
          in: query
          type: string
          description: Limit results to events updated after this UTC date/time (ISO8601)
        - name: minlatitude
          in: query
          type: number
          description: Limit to events south of this latitude (-90 to 90)
        - name: maxlatitude
          in: query
          type: number
          description: Limit to events north of this latitude (-90 to 90)
        - name: minlongitude
          in: query
          type: number
          description: Limit to events east of this longitude (-360 to 360)
        - name: maxlongitude
          in: query
          type: number
          description: Limit to events west of this longitude (-360 to 360)
        - name: latitude
          in: query
          type: number
          description: Latitude for circle search center (requires longitude and maxradius)
        - name: longitude
          in: query
          type: number
          description: Longitude for circle search center (requires latitude and maxradius)
        - name: maxradius
          in: query
          type: number
          description: Maximum radius in degrees for circle search
        - name: maxradiuskm
          in: query
          type: number
          description: Maximum radius in kilometers for circle search
        - name: minmagnitude
          in: query
          type: number
          description: Limit to events with magnitude larger than this value
        - name: maxmagnitude
          in: query
          type: number
          description: Limit to events with magnitude smaller than this value
        - name: mindepth
          in: query
          type: number
          description: Limit to events with depth more than this value in km
        - name: maxdepth
          in: query
          type: number
          description: Limit to events with depth less than this value in km
        - name: eventtype
          in: query
          type: string
          description: Limit to events of a specific type (e.g., earthquake, explosion)
        - name: limit
          in: query
          type: integer
          description: Maximum number of events to return (1-20000)
        - name: offset
          in: query
          type: integer
          description: Return results starting at this offset (for pagination)
        - name: orderby
          in: query
          type: string
          description: Order results by field
        - name: catalog
          in: query
          type: string
          description: Specify a specific earthquake catalog to query
        - name: contributor
          in: query
          type: string
          description: Limit to events contributed by a specific contributor
        - name: eventid
          in: query
          type: string
          description: Select a specific event by event ID
        - name: includeallmagnitudes
          in: query
          type: boolean
          description: Include all available magnitudes for events
        - name: includeallorigins
          in: query
          type: boolean
          description: Include all available origins for events
        - name: includedeleted
          in: query
          type: boolean
          description: Include deleted events
        - name: includesuperseded
          in: query
          type: boolean
          description: Include superseded events
        - name: reviewstatus
          in: query
          type: string
          description: Limit to events with a specific review status
  exposes:
  - type: rest
    namespace: usgs-earthquake-catalog-earthquakes-rest
    port: 8080
    description: REST adapter for USGS Earthquake Catalog API — 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: Count Earthquake Events
        call: usgs-earthquake-catalog-earthquakes.countearthquakes
        with:
          format: rest.format
          starttime: rest.starttime
          endtime: rest.endtime
          minlatitude: rest.minlatitude
          maxlatitude: rest.maxlatitude
          minlongitude: rest.minlongitude
          maxlongitude: rest.maxlongitude
          minmagnitude: rest.minmagnitude
          maxmagnitude: rest.maxmagnitude
        outputParameters:
        - type: object
          mapping: $.
    - path: /v1/query
      name: query
      description: REST surface for query.
      operations:
      - method: GET
        name: queryearthquakes
        description: Query Earthquake Catalog
        call: usgs-earthquake-catalog-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
          eventtype: rest.eventtype
          limit: rest.limit
          offset: rest.offset
          orderby: rest.orderby
          catalog: rest.catalog
          contributor: rest.contributor
          eventid: rest.eventid
          includeallmagnitudes: rest.includeallmagnitudes
          includeallorigins: rest.includeallorigins
          includedeleted: rest.includedeleted
          includesuperseded: rest.includesuperseded
          reviewstatus: rest.reviewstatus
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    namespace: usgs-earthquake-catalog-earthquakes-mcp
    port: 9090
    transport: http
    description: MCP adapter for USGS Earthquake Catalog API — Earthquakes. One tool per consumed operation, routed inline
      through this capability's consumes block.
    tools:
    - name: count-earthquake-events
      description: Count Earthquake Events
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: usgs-earthquake-catalog-earthquakes.countearthquakes
      with:
        format: tools.format
        starttime: tools.starttime
        endtime: tools.endtime
        minlatitude: tools.minlatitude
        maxlatitude: tools.maxlatitude
        minlongitude: tools.minlongitude
        maxlongitude: tools.maxlongitude
        minmagnitude: tools.minmagnitude
        maxmagnitude: tools.maxmagnitude
      outputParameters:
      - type: object
        mapping: $.
    - name: query-earthquake-catalog
      description: Query Earthquake Catalog
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: usgs-earthquake-catalog-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
        eventtype: tools.eventtype
        limit: tools.limit
        offset: tools.offset
        orderby: tools.orderby
        catalog: tools.catalog
        contributor: tools.contributor
        eventid: tools.eventid
        includeallmagnitudes: tools.includeallmagnitudes
        includeallorigins: tools.includeallorigins
        includedeleted: tools.includedeleted
        includesuperseded: tools.includesuperseded
        reviewstatus: tools.reviewstatus
      outputParameters:
      - type: object
        mapping: $.