National Interagency Fire Center · Capability
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.
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
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: $.