home / mcp / mcp sfd - seattle fire department mcp server

MCP SFD - Seattle Fire Department MCP Server

real time updates from the Seattle Fire Department

Installation
Add the following to your MCP client configuration file.

Configuration

View docs
{
  "mcpServers": {
    "dpkirschner-mcp-sfd": {
      "command": "python",
      "args": [
        "-m",
        "mcp_sfd.server"
      ],
      "env": {
        "SFD_BASE_URL": "https://sfdlive.com/api/data/",
        "DEFAULT_CACHE_TTL": "15"
      }
    }
  }
}

You can use this MCP server to fetch, normalize, and analyze Seattle Fire Department live incident data with quick lookups, real-time status checks, and reliable in-memory caching. It exposes convenient tools for low-level API access, latest incidents, fire status, and evacuation monitoring, all wrapped in a robust, error-tolerant service you can query from your MCP client.

How to use

You interact with the server from your MCP client by calling its tools to fetch data, check for active fires, retrieve the most recent incident, or verify evacuation orders. Start the local server or connect to its HTTP endpoints, then compose tool invocations that specify what data you want and how far back to look. The tools normalize upstream data, cache responses for performance, and provide clear error codes when something goes wrong.

How to install

Prerequisites you need before installation are Python and a functioning Python package manager. You also need network access to install dependencies.

# Install the MCP package in editable mode
pip install -e .

# Install development dependencies
pip install -e ".[dev]"

Configuration and usage notes

The server uses an environment variable to determine the base API URL for Seattle Fire Department data and a default cache TTL for responses.

# Example environment variables
export SFD_BASE_URL=https://sfdlive.com/api/data/
export DEFAULT_CACHE_TTL=15

Operational commands

Run the MCP server locally to start serving MCP requests.

# Run with default settings
python -m mcp_sfd.server

# Or use the CLI command if you prefer it
mcp-sfd

Notes on tools and behavior

The server provides several focused tools that you can call from your MCP client. They include a low-level API proxy with normalization and caching, a quick method to fetch the latest incident, a status check for active fires, and a check for evacuation orders.

All tools implement standardized error codes to aid reliability in scripts and automation, such as connectivity issues, timeouts, and schema validation problems.

Available tools

sfd.fetch_raw

Low-level proxy for the Seattle Fire Department API with full parameter control, normalization, and caching.

sfd.latest_incident

Returns the single most recent incident for quick updates.

sfd.is_fire_active

Checks if there are any active fire incidents in Seattle with a configurable lookback window.

sfd.has_evacuation_orders

Scans recent incidents for evacuation-related keywords to indicate active orders.