NIFC ArcGIS REST Services API

The National Interagency Fire Center hosts an ArcGIS REST Services Directory exposing FeatureServer services that provide authoritative geospatial data on wildfire incidents, fire perimeters, dispatch boundaries, fuel treatments, weather stations, and related fire management resources. This specification documents the common ArcGIS REST conventions used by NIFC's hosted services.

Run with Naftiko NationalInteragencyFireCenterAPI

What You Can Do

GET
Listservices — List ArcGIS services
/
GET
Getfeatureserver — Get FeatureServer metadata
/{service}/FeatureServer
GET
Getlayer — Get layer metadata
/{service}/FeatureServer/{layerId}
GET
Querylayer — Query a layer
/{service}/FeatureServer/{layerId}/query

MCP Tools

listservices

List ArcGIS services

read-only idempotent
getfeatureserver

Get FeatureServer metadata

read-only idempotent
getlayer

Get layer metadata

read-only idempotent
querylayer

Query a layer

read-only idempotent

Capability Spec

national-interagency-fire-center-capability.yaml Raw ↑
naftiko: 1.0.0-alpha2
info:
  label: NIFC ArcGIS REST Services API
  description: The National Interagency Fire Center hosts an ArcGIS REST Services Directory exposing FeatureServer services
    that provide authoritative geospatial data on wildfire incidents, fire perimeters, dispatch boundaries, fuel treatments,
    weather stations, and related fire management resources. This specification documents the common ArcGIS REST conventions
    used by NIFC's hosted services.
  tags:
  - National
  - Interagency
  - Fire
  - Center
  - API
  created: '2026-05-06'
  modified: '2026-05-06'
capability:
  consumes:
  - type: http
    namespace: national-interagency-fire-center
    baseUri: https://services3.arcgis.com/T4QMspbfLg3qTGWY/ArcGIS/rest/services
    description: NIFC ArcGIS REST Services API HTTP API.
    resources:
    - name: resource
      path: /
      operations:
      - name: listservices
        method: GET
        description: List ArcGIS services
        inputParameters:
        - name: f
          in: query
          type: string
          description: Response format.
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: service-featureserver
      path: /{service}/FeatureServer
      operations:
      - name: getfeatureserver
        method: GET
        description: Get FeatureServer metadata
        inputParameters:
        - name: service
          in: path
          type: string
          required: true
        - name: f
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: service-featureserver-layerid
      path: /{service}/FeatureServer/{layerId}
      operations:
      - name: getlayer
        method: GET
        description: Get layer metadata
        inputParameters:
        - name: service
          in: path
          type: string
          required: true
        - name: layerId
          in: path
          type: integer
          required: true
        - name: f
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
    - name: service-featureserver-layerid-query
      path: /{service}/FeatureServer/{layerId}/query
      operations:
      - name: querylayer
        method: GET
        description: Query a layer
        inputParameters:
        - name: service
          in: path
          type: string
          required: true
        - name: layerId
          in: path
          type: integer
          required: true
        - name: where
          in: query
          type: string
          description: SQL-like attribute filter.
        - name: objectIds
          in: query
          type: string
          description: Comma-separated ObjectIDs to retrieve.
        - name: geometry
          in: query
          type: string
          description: Geometry filter (point, envelope, polyline, polygon).
        - name: geometryType
          in: query
          type: string
        - name: inSR
          in: query
          type: string
          description: Spatial reference of the input geometry.
        - name: spatialRel
          in: query
          type: string
        - name: outFields
          in: query
          type: string
          description: Comma-separated list of fields to return, or '*' for all.
        - name: outSR
          in: query
          type: string
        - name: returnGeometry
          in: query
          type: boolean
        - name: returnIdsOnly
          in: query
          type: boolean
        - name: returnCountOnly
          in: query
          type: boolean
        - name: orderByFields
          in: query
          type: string
        - name: groupByFieldsForStatistics
          in: query
          type: string
        - name: outStatistics
          in: query
          type: string
        - name: resultOffset
          in: query
          type: integer
        - name: resultRecordCount
          in: query
          type: integer
        - name: f
          in: query
          type: string
        outputRawFormat: json
        outputParameters:
        - name: result
          type: object
          value: $.
  exposes:
  - type: rest
    port: 8080
    namespace: national-interagency-fire-center-rest
    description: REST adapter for NIFC ArcGIS REST Services API.
    resources:
    - path: /
      name: listservices
      operations:
      - method: GET
        name: listservices
        description: List ArcGIS services
        call: national-interagency-fire-center.listservices
        outputParameters:
        - type: object
          mapping: $.
    - path: /{service}/FeatureServer
      name: getfeatureserver
      operations:
      - method: GET
        name: getfeatureserver
        description: Get FeatureServer metadata
        call: national-interagency-fire-center.getfeatureserver
        with:
          service: rest.service
        outputParameters:
        - type: object
          mapping: $.
    - path: /{service}/FeatureServer/{layerId}
      name: getlayer
      operations:
      - method: GET
        name: getlayer
        description: Get layer metadata
        call: national-interagency-fire-center.getlayer
        with:
          service: rest.service
          layerId: rest.layerId
        outputParameters:
        - type: object
          mapping: $.
    - path: /{service}/FeatureServer/{layerId}/query
      name: querylayer
      operations:
      - method: GET
        name: querylayer
        description: Query a layer
        call: national-interagency-fire-center.querylayer
        with:
          service: rest.service
          layerId: rest.layerId
        outputParameters:
        - type: object
          mapping: $.
  - type: mcp
    port: 9090
    namespace: national-interagency-fire-center-mcp
    transport: http
    description: MCP adapter for NIFC ArcGIS REST Services API for AI agent use.
    tools:
    - name: listservices
      description: List ArcGIS services
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: national-interagency-fire-center.listservices
      with:
        f: tools.f
      inputParameters:
      - name: f
        type: string
        description: Response format.
      outputParameters:
      - type: object
        mapping: $.
    - name: getfeatureserver
      description: Get FeatureServer metadata
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: national-interagency-fire-center.getfeatureserver
      with:
        service: tools.service
        f: tools.f
      inputParameters:
      - name: service
        type: string
        description: service
        required: true
      - name: f
        type: string
        description: f
      outputParameters:
      - type: object
        mapping: $.
    - name: getlayer
      description: Get layer metadata
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: national-interagency-fire-center.getlayer
      with:
        service: tools.service
        layerId: tools.layerId
        f: tools.f
      inputParameters:
      - name: service
        type: string
        description: service
        required: true
      - name: layerId
        type: integer
        description: layerId
        required: true
      - name: f
        type: string
        description: f
      outputParameters:
      - type: object
        mapping: $.
    - name: querylayer
      description: Query a layer
      hints:
        readOnly: true
        destructive: false
        idempotent: true
      call: national-interagency-fire-center.querylayer
      with:
        service: tools.service
        layerId: tools.layerId
        where: tools.where
        objectIds: tools.objectIds
        geometry: tools.geometry
        geometryType: tools.geometryType
        inSR: tools.inSR
        spatialRel: tools.spatialRel
        outFields: tools.outFields
        outSR: tools.outSR
        returnGeometry: tools.returnGeometry
        returnIdsOnly: tools.returnIdsOnly
        returnCountOnly: tools.returnCountOnly
        orderByFields: tools.orderByFields
        groupByFieldsForStatistics: tools.groupByFieldsForStatistics
        outStatistics: tools.outStatistics
        resultOffset: tools.resultOffset
        resultRecordCount: tools.resultRecordCount
        f: tools.f
      inputParameters:
      - name: service
        type: string
        description: service
        required: true
      - name: layerId
        type: integer
        description: layerId
        required: true
      - name: where
        type: string
        description: SQL-like attribute filter.
      - name: objectIds
        type: string
        description: Comma-separated ObjectIDs to retrieve.
      - name: geometry
        type: string
        description: Geometry filter (point, envelope, polyline, polygon).
      - name: geometryType
        type: string
        description: geometryType
      - name: inSR
        type: string
        description: Spatial reference of the input geometry.
      - name: spatialRel
        type: string
        description: spatialRel
      - name: outFields
        type: string
        description: Comma-separated list of fields to return, or '*' for all.
      - name: outSR
        type: string
        description: outSR
      - name: returnGeometry
        type: boolean
        description: returnGeometry
      - name: returnIdsOnly
        type: boolean
        description: returnIdsOnly
      - name: returnCountOnly
        type: boolean
        description: returnCountOnly
      - name: orderByFields
        type: string
        description: orderByFields
      - name: groupByFieldsForStatistics
        type: string
        description: groupByFieldsForStatistics
      - name: outStatistics
        type: string
        description: outStatistics
      - name: resultOffset
        type: integer
        description: resultOffset
      - name: resultRecordCount
        type: integer
        description: resultRecordCount
      - name: f
        type: string
        description: f
      outputParameters:
      - type: object
        mapping: $.