Seattle Fire Department MCP Server
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Seattle Fire Department MCP Serverare there any active fires in Seattle right now?"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
MCP SFD - Seattle Fire Department MCP Server
A Model Context Protocol (MCP) server that provides tools for LLMs to fetch and analyze Seattle Fire Department live incident data.
Features
Low-level API proxy (
sfd.fetch_raw) with normalization and cachingLatest incident retrieval (
sfd.latest_incident) for quick updatesFire detection (
sfd.is_fire_active) with intelligent status analysisEvacuation monitoring (
sfd.has_evacuation_orders) with keyword scanningRobust error handling and retry logic
Comprehensive data normalization
In-memory caching with configurable TTL
Related MCP server: incident-io-mcp-server
Installation
# Install the package
pip install -e .
# Install development dependencies
pip install -e ".[dev]"Usage
Running the MCP Server
# Run with default settings
python -m mcp_sfd.server
# Or use the CLI command
mcp-sfdEnvironment Variables
SFD_BASE_URL: Base URL for SFD API (default:https://sfdlive.com/api/data/)DEFAULT_CACHE_TTL: Default cache TTL in seconds (default: 15)
Available Tools
sfd.fetch_raw
Low-level proxy for the SFD API with full parameter control.
{
"order": "new",
"length": 100,
"search": "Any",
"cacheTtlSeconds": 15
}sfd.latest_incident
Returns the single most recent incident.
{}sfd.is_fire_active
Checks if there are any active fire incidents in Seattle.
{
"lookbackMinutes": 120
}sfd.has_evacuation_orders
Scans for evacuation-related keywords in recent incidents.
{
"lookbackMinutes": 180
}Development
Running Tests
# Run all tests
pytest
# Run with coverage
pytest --cov=mcp_sfd
# Run specific test file
pytest tests/test_normalize.pyCode Quality
# Format code
black mcp_sfd/ tests/
# Lint
ruff check mcp_sfd/ tests/
# Type check
mypy mcp_sfd/Architecture
The server is built with several key components:
HTTP Client (
http_client.py): Handles API requests with retry logic and cachingData Normalization (
normalize.py): Converts upstream API format to standardized schemasPydantic Schemas (
schemas.py): Type-safe data models for all inputs and outputsTool Implementations (
tools/): Individual MCP tool logicServer (
server.py): MCP server registration and error handling
Data Normalization
The server handles complex data transformations:
Flattens nested upstream data structures
Converts Seattle local time to UTC
Normalizes coordinates from various formats
Parses unit identifiers and status information
Standardizes boolean fields
Error Handling
All tools use standardized MCP error codes:
UPSTREAM_HTTP_ERROR: API connectivity issuesUPSTREAM_TIMEOUT: Request timeoutsSCHEMA_VALIDATION_ERROR: Data parsing failures
License
MIT
This server cannot be deployed
Maintenance
Related MCP Connectors
Free live public-safety incident map: global crime, fire, disaster, weather and news feeds
Wildfire events and aggregates across global, U.S., and Canada sources. Paid via x402 USDC.
Live worldwide wildfire detections, fire archive, citable stats, aircraft. Free, CC BY 4.0.
Real-time corroborated news events + 5-year archive, for agents. Free tier, no key.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceProvides real-time access to Israeli emergency alerts from the official Pikud Haoref (Home Front Command) API. Enables AI assistants to check current alerts, retrieve alert history with intelligent city filtering, and monitor emergency notifications including rocket alerts, aerial intrusions, and earthquakes.5-
- FlicenseNot gradedqualityDmaintenanceEnables interaction with Incident.io to manage incidents, severities, and health checks via natural language. Provides endpoints for getting and creating incidents.1-
- AlicenseNot gradedqualityBmaintenanceProvides real-time San Francisco Bay Area Rapid Transit data, enabling queries about BART schedules, routes, and station information through natural language.149 npmMIT
- AlicenseAqualityCmaintenanceEnables checking real-time service outages and incidents from whatbroke.today, allowing users to ask about current downtime, service status, and incident details.548 npmMIT