Skip to main content

CFAST MCP

CI Status pre-commit.ci status uv Ruff MyPy Checked PyPI - Python Version PyPI codecov License: MIT

CFAST MCP is an MCP server that lets an AI assistant build, run, and analyze CFAST (Consolidated Fire and Smoke Transport, NIST) fire simulations through conversation. It is built on top of PyCFAST and exposes the CFAST model as a set of tools. The AI assistant is able to create a model, add compartments, materials, vents, fires and devices step by step, run CFAST, and make summaries of the results.

Example

Ask your assistant something like:

Create a 4 m × 3 m × 2.5 m room with a door (0.9 × 2 m) to the outside and a fire growing to 1 MW in 300 s. Run it and give me the peak upper-layer temperature then show me the folder where you create the file, so I can inspect it.

Results will probably look like this:

image

Tools

Group Tools
Create & configure create_model, update_simulation
Components add_* / update_* for materials, compartments, wall vents, ceiling/floor vents, mechanical vents, fires, devices (targets & detectors), surface connections
Inspect inspect_model (summary, optional .in file), get_model_files
Run & results run_model, get_results (bounded previews and per-column min/max/final stats)

Results are returned to the AI assistant as small text summaries. The generated files (.in, output .csv, logs) are written in a temporary directory while the session is active. Use get_model_files to locate them if you want to open them directly.

Note: models live in memory for the lifetime of the server process. Restarting the server (or your MCP client) will delete them.

Installation

Requires Python 3.10+ and CFAST 7.7.0+.

uvx (Recommended)

Install uv, then add cfast-mcp directly in your client configuration:

{
  "mcpServers": {
    "cfast": {
      "command": "uvx",
      "args": ["cfast-mcp"],
      "env": { "CFAST": "/path/to/your/cfast/executable" }
    }
  }
}

Claude Code

If you use Claude Code, a single command registers the server:

claude mcp add cfast -e CFAST=/path/to/your/cfast/executable -- cfast-mcp

Pip

Create a virtual environment and install from PyPI:

python -m venv venv
source venv/bin/activate  # Linux/macOS
venv\Scripts\activate     # Windows
pip install cfast-mcp

Then add cfast-mcp to your client configuration:

{
  "mcpServers": {
    "cfast": {
      "command": "cfast-mcp",
      "env": { "CFAST": "/path/to/your/cfast/executable" }
    }
  }
}

CFAST Installation

Download and install CFAST from the NIST CFAST website or the CFAST GitHub repository. Follow the installation instructions for your operating system and ensure cfast is available in your PATH. If CFAST is installed in a non-standard location, you can manually specify the path by setting the CFAST environment variable to point to the CFAST executable.

export CFAST="/path/to/your/cfast/executable"   # Linux/macOS
set CFAST="C:\path\to\cfast.exe"                # Windows (cmd)
$env:CFAST="C:\path\to\cfast.exe"               # Windows (PowerShell)

Development

git clone https://github.com/bewygs/cfast-mcp.git
cd cfast-mcp
uv sync --extra dev          # install dev dependencies
uv run pytest                # run tests
uv run ruff check --fix .    # lint
uv run mypy src/             # type-check

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cfast_mcp-0.1.1.tar.gz (147.1 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cfast_mcp-0.1.1-py3-none-any.whl (29.8 kB view details)

Uploaded Python 3

File details

Details for the file cfast_mcp-0.1.1.tar.gz.

File metadata

  • Download URL: cfast_mcp-0.1.1.tar.gz
  • Upload date:
  • Size: 147.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cfast_mcp-0.1.1.tar.gz
Algorithm Hash digest
SHA256 1aefc2b07020993d6ad55b3e7f42907958bf49938820d45cae923ad761b1dd5f
MD5 1ee4583975f99f774672a70ab59947a2
BLAKE2b-256 8df8d800a92d2238d66d9aaa7a5f2cbdff08836ef8dc785eaccebfe5771ebd33

See more details on using hashes here.

Provenance

The following attestation bundles were made for cfast_mcp-0.1.1.tar.gz:

Publisher: python-publish.yml on bewygs/cfast-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file cfast_mcp-0.1.1-py3-none-any.whl.

File metadata

  • Download URL: cfast_mcp-0.1.1-py3-none-any.whl
  • Upload date:
  • Size: 29.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for cfast_mcp-0.1.1-py3-none-any.whl
Algorithm Hash digest
SHA256 b28c3ff3436650d18eab87a7104d5baa820a5c50c6c42c1b649e10d97f4501f0
MD5 c7e7aa728bb89f5fd1bd895548541c70
BLAKE2b-256 b8c55f37c4bbb3347c6d36c253fd7f4073da27b495d3a4c385ebad6c2927de05

See more details on using hashes here.

Provenance

The following attestation bundles were made for cfast_mcp-0.1.1-py3-none-any.whl:

Publisher: python-publish.yml on bewygs/cfast-mcp

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

This release

0.1.1 This release

2 files

0.1.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page