Skip to content
View makeitworkok's full-sized avatar

Highlights

  • Pro

Block or report makeitworkok

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
makeitworkok/README.md

Hi, I'm Chris Favre

HVAC controls professional — 30+ years in the industry, 25+ years in BAS, controls, and systems integration.

I build open-source tools that connect AI to real building automation systems. Not demos. Not proofs of concept. Tools I've validated against live hardware, with safety gates built in from the start.


What I'm building

BoilerBob is the project everything else is pointing toward, a project-specific BAS agent that carries knowledge from engineering through commissioning and into long-term building operation. It's built on the tools below.


Projects

nMCP — AI inside Niagara

A Niagara 4 custom module (for stations prior to v4.13) that exposes station data through the Model Context Protocol. 40 tools covering components, alarms, histories, schedules, BACnet, Haystack tagging, wiresheet operations, and more. Read-mostly with explicit write gates, allowlist enforcement, and audit logging.

Live-validated. Write-gated. Safety-first.


mcp4bas — AI for any BAS network

An MCP server that connects Claude and other AI agents directly to BACnet/IP, Modbus TCP, Haystack, MQTT, and SNMP. Works without Niagara — any building with BACnet is a target. Validated against real hardware.

Read-only by default. Every write requires explicit enablement, an allowlist, and dry-run verification.


Whistleblower — Catch when dashboards lie

BAS and SCADA graphics drift. Sensors go stale. Integrations break quietly. Whistleblower logs into any web-based control system, captures screenshots and DOM data, and uses AI to analyze what operators actually see vs. what the system should show.

100% read-only. No vendor lock-in. Desktop app available for Windows and macOS.


nMCP-client — Desktop client for nMCP

A PySide6 desktop application for connecting to nMCP stations, discovering tools, and running LLM-assisted BAS workflows with human approval gates on all write operations.


BAS-ESP32 — Portable field tool

An ESP32-based portable field tool for building automation professionals. Supports Ethernet and Wi-Fi scanning of BACnet/IP and Modbus TCP devices. Designed for field use on the WT32-ETH01.


Background

I'm a BAS controls professional, not a software developer by training. I learned to build these tools because they didn't exist, and because I kept running into the same problems on real projects:

  • AI agents that couldn't talk to live building systems
  • BAS dashboards that looked right but weren't
  • Projects where knowledge evaporated at every handoff
  • Owners who inherited systems without the context to operate them

These projects are my attempt to do something about that.

Safety is non-negotiable. Every tool I build defaults to read-only, uses allowlists, and requires explicit human approval for any action that changes system state. I treat these systems the same way I treat them in the field: carefully.


Philosophy

I work from a Magnifica Humanitas mindset: technology should magnify human dignity, agency, and care. I automate repetition so human judgment can focus on design, commissioning, and real problem-solving.


Connect

All projects are independent open-source work, not affiliated with my employer.

Pinned Loading

  1. nMCP nMCP Public

    Niagara 4 custom dev module + MCP server. Enables powerful workflows, testing and educational purposes only.

    Java 7 1

  2. Whistleblower Whistleblower Public

    Local watchdog that catches when BAS or SCADA dashboards lie. MIT open. Screenshots + DOM, flags issues.

    Python 2 1

  3. nMCP-client nMCP-client Public

    Lightweight desktop MCP client for nMCP connections

    Python 2

  4. BAS-ESP32 BAS-ESP32 Public

    BAS-ESP32 is a portable, ESP32-based field tool for building automation professionals. Designed around the WT32-ETH01, it supports Ethernet and Wi-Fi scanning of BACnet/IP and Modbus TCP devices, i…

    C++

  5. buildingSimulator buildingSimulator Public

    Simulated building with BACnet devices and objects to describe the BAS. Skeleton interface for easy control of device count, hvac equipment types, and other modeling toggles.

    Python

  6. mcp4bas mcp4bas Public

    An open-source MCP server that connects AI agents to building automation networks.

    Python