Skip to main content
ComplianceAI & MCPCustomer Story

Facility Compliance Tracking, and a Use We Never Designed For

Compliance is one of the most underrated parts of AssetLab. Here is how it works, and how a customer used Claude to turn his city's requirements into compliance records linked to his asset registry.

October 1, 2026
•
9 min read
•
Compliance

One of AssetLab's most underrated features is Compliance. We usually introduce it when a prospect raises a specific need: a fire marshal visit, an insurer asking for certificates, an elevator licence that nearly lapsed. The idea is simple. You define the preventive maintenance a requirement calls for, on a single asset or a whole system, and AssetLab tracks whether it is actually being done, in real time.

Recently a customer showed me a way of using it that I had not considered. He connected Claude to AssetLab through our MCP integration, asked it to find the city requirements that applied to his assets, and had it create the matching compliance records directly in AssetLab, each one linked to the right part of his asset registry.

As a founder, it is exciting to watch customers find uses for what you built that save them real time. This post explains what Compliance does, why the slow part has always been the setup, and how that customer took the slow part off his plate.

The short version: Compliance status in AssetLab is never typed in. It is earned by completed work orders. What an AI assistant changes is the first hour of reading bylaws and building the list, not the proof.

Here is what this post covers:

  • How a compliance item turns an obligation into a live score
  • Why requirements attach to building systems, not long asset lists
  • What an inspector sees when they scan a placard on the wall
  • How one customer used Claude and MCP to load his city requirements
  • Where a person still has to check the work, and why

What Compliance does

Compliance tracks the obligations with someone else's clock on them: fire alarm inspections, sprinkler tests, elevator licences, boiler certificates, backflow tests, playground audits. Its only job is that nothing lapses quietly. It is built from three pieces.

  • A compliance item is the obligation itself: a name, a regulation reference (the bylaw, code section or standard), what it applies to, and a compliance period in months.
  • Linked PM schedulesare the work that fulfils it. Each link carries a required frequency in days and a weight for how much it counts toward the item's score.
  • Completed work ordersare the evidence. The PM schedules generate work orders as usual, and when they are closed out the item's status moves. Nobody sets it by hand.

That last point is the design decision that matters most. In a spreadsheet, compliance is whatever someone typed in the status column. In AssetLab it is a calculation over work that was actually done, which is the only version worth showing an auditor.


How the score is earned

For each linked schedule, AssetLab counts the completed work orders inside the compliance period and compares them with how many the required frequency calls for. A monthly check over a 12-month period needs 12; if 11 were completed, that schedule scores 91.7%. The item's score is the weighted average of its schedules.

Compliance item
Fire alarm system inspection and testing
CAN/ULC-S536 · System: Fire Alarm · 12-month period
97.2%
Compliant
Annual fire alarm inspection (vendor)
100%
Every 365 daysWeight 21 of 1 completed in period
Monthly fire alarm visual check
91.7%
Every 30 daysWeight 111 of 12 completed in period
(100 × 2 + 91.7 × 1) / 3 = 97.2%. Compliant at 95% and above, warning from 85%, non-compliant below that. Illustrative figures.

The item is compliant at 95% and above, in warning from 85%, and non-compliant below that. Weights let the annual third-party inspection count for more than the monthly walk past the panel. Two details keep the score fair. A schedule linked last week is only expected to have been done once, not twelve times. And an item with no schedules linked at all scores as non-compliant, because an obligation with nothing fulfilling it is exactly what the module exists to surface.


Systems, not asset lists

Most requirements are not about one asset. The fire code does not care about pull station 14; it cares about the fire alarm system. So a compliance item attaches to a system (or, for public works, an infrastructure network), and the PM schedule that fulfils it can be associated with that system too. A "Refrigeration monthly inspection" on the refrigeration system inspects every related asset under one work order, so nothing under the system escapes the audit trail and nobody maintains a list of forty assets by hand.

We wrote more about the reasoning in Introducing System-Based Compliance Tracking. It is also what made the customer's approach below work so well: his systems were already set up, so there was an obvious place for each requirement to land.


When the inspector arrives

A score is only useful if you can prove it. Every compliance item has a Documents tab for the certificate, report or sign-off, and a Reports tab that downloads a PDF audit report under your organization's name: the assessed status and the figures behind it, each schedule's performance and next due date, and a timeline of completions with overdue stretches marked.

New this week are placards: printable QR stickers for a room or piece of equipment, such as the fire riser room or the pool mechanical room, holding the compliance items that belong there.

  • Anyone can scan itwith a phone camera, no AssetLab account needed, and see each item's status, when it was last done and when it is next due.
  • An auditor PIN unlocks the completed work orders and their attached reports. File links expire after 15 minutes, and five wrong tries lock the detail for 15 minutes.
  • It stays current without a reprint. The sticker holds only a link, so recording an inspection or changing the items shows up on the next scan. Only work completed at the placard's site counts, so one building's riser never shows another building's inspections.

How most CMMS handle compliance, and how AssetLab does

Almost every CMMS will tell you it does compliance. Look closer and in most of them it means a tag or a checkbox on a PM schedule: the inspection gets scheduled, the work order gets closed, and the regulation itself never exists as a record. Not every tool works that way, but it is the pattern we see most often when teams move to AssetLab, and it leaves three questions unanswered: which obligations do we have, which of them have nothing scheduled, and can we prove the rest were done on time?

Attribute
Typical CMMS
AssetLab
What a requirement isA tag or "compliance" flag on a PM schedule or work orderIts own record, with the regulation reference and compliance period
What it applies toIndividual assets, repeated on each oneA whole building system or infrastructure network
How status is decidedPM on-time rate, or a status field someone updatesWeighted score computed from completed work orders against required frequency
A requirement with nothing scheduledInvisible: no PM means nothing to report onScores non-compliant and shows up on the list
EvidenceAttachments spread across individual work ordersCertificates on the item, plus the completion history behind it
Audit preparationExport work orders and assemble the binder by handOne-click PDF audit report with overdue stretches marked
Inspector on sitePrinted binder, or a login on your laptopQR placard on the wall, PIN for the underlying reports
Loading requirementsTyped in one by one, or a spreadsheet importIn the app, or researched and created by an AI assistant over MCP

The common pattern, not every product. Check any tool you are evaluating against these rows.

The difference that matters most is the fourth row. A tool that only knows about scheduled work cannot tell you about the inspection nobody scheduled, and that is usually the one the fire marshal asks about.


The slow part was always setup

Once Compliance is running, it runs itself: schedules generate work orders, technicians close them, the score moves. The hard part is the first afternoon. Someone has to work out which requirements apply to this portfolio: the provincial fire code, the elevating devices regulation, the city's cross-connection bylaw, the pool regulation, whatever the insurer added. Then they have to read each one for the frequency, match it to the right system, and type it all in.

That work is real research, and it is the reason we usually only bring Compliance up when a prospect already has a specific requirement in mind. Teams know they should load the whole list. Few have the afternoon.


What one customer did

AssetLab has an MCP server that lets an AI assistant such as Claude read and write your AssetLab data with the permissions of an API key you issue. We built it with work orders, assets and reporting in mind. The customer pointed it at the setup problem instead.

He asked Claude to look at the systems in his account, find the city and provincial requirements that applied to them, and create the matching compliance records. Claude read his registry, did the research, came back with the list and the references, and once he was happy with it, created the compliance items against the right systems along with the PM schedules to fulfil them.

Claude, connected to AssetLab over MCP
"Look at the systems in our AssetLab account and find the city and provincial requirements that apply to them. Give me each one with its regulation reference and required frequency. Once I approve the list, set them up as compliance items."
  1. 1Reads your sites, systems and assets from AssetLab
  2. 2Researches the city and provincial requirements that apply
  3. 3Shows you the list, with a reference for each, and waits
  4. 4Creates the compliance items, PM schedules and links
Proposed requirementReferenceSystemEvery
Backflow preventer annual testCity cross-connection bylawDomestic Water365 days
Sprinkler system inspectionProvincial fire codeFire Suppression365 days
Emergency lighting monthly testProvincial fire codeEmergency Lighting30 days
Elevator periodic inspectionProvincial elevating devices regulationVertical Transport365 days
Illustrative. The exact bylaws, code sections and frequencies depend on your municipality and province, which is why the list stops for approval before anything is written.

One honest detail: when he did this, the MCP server could create compliance items and PM schedules but could not yet link one to the other, so that last step fell back to clicks in the app. He told us, and we added the link tools the next day. The whole sequence now runs end to end.

Why it works: The assistant is good at the part people find slow (reading regulations and turning them into a structured list), and AssetLab is good at the part people find hard (tracking, week after week, whether the work was done). Neither replaces the other.

Attribute
Setting it up by hand
With an assistant over MCP
Finding what appliesReading bylaws and code books, or asking a consultantThe assistant researches and proposes a list with references
Matching to your assetsCross-referencing the registry by eyeIt reads your systems and places each item on one
Data entryOne form per item, one per schedule, one per linkCreated in one pass after you approve the list
Who approves the listYouStill you
What proves complianceCompleted work ordersCompleted work orders

Loading a portfolio's compliance requirements for the first time.


Where a person still decides

An AI assistant can cite the wrong edition of a code, miss a local amendment, or get a frequency wrong. Treat its list as a well-organized first draft, not a legal opinion. The regulation reference field on every compliance item is what makes that check quick: each record says where it came from, so you, your fire safety consultant or the authority having jurisdiction can confirm it line by line.

The assistant also cannot make anything compliant. It can create the obligation and the schedule. The status only moves when a person completes the work order, and the evidence is whatever that person attached. AssetLab tracks your obligations; it does not decide them for you, and it does not replace the inspection.


How to try it

Compliance is included on every AssetLab plan. The MCP server is part of the Enterprise plan. If you have both:

  • Set up your systems first. The requirements need somewhere to land. Fire alarm, fire suppression, emergency lighting, domestic water, vertical transport and HVAC cover most buildings.
  • Issue an API key in Settings with the compliance and PM scopes, and connect it to Claude.
  • Name your city and province in the prompt and ask for a list with regulation references and frequencies before anything is created.
  • Check the list against the source, or have whoever signs off on fire and life safety review it.
  • Approve it and let the assistant create the items, schedules and links. Then open Compliance and see which items are already non-compliant because nothing was ever scheduled. That list is usually the most useful thing you will read all month.

Not on Enterprise? The same setup is a few forms per requirement in the app: create the item, pick the PM schedules that fulfil it, and set each one's frequency and weight.

How AssetLab helps

How Compliance works in AssetLab

Compliance is not a separate checklist. It reads the systems, PM schedules and work orders you already keep, so the score reflects work that was actually done.

Requirement with a reference

Each item records its bylaw, code section or standard, and a compliance period.

Attached to systems

Apply a requirement to a whole building system or infrastructure network, not an asset list.

Earned, weighted score

Computed from completed work orders against each schedule, weighted by importance.

Audit report and documents

Certificates on the item and a branded PDF audit report with the full completion timeline.

Placards for inspectors

QR stickers show live status on a phone, with a PIN for the underlying evidence.

API and MCP access

Create items, schedules and links from your own systems or an AI assistant (Enterprise).

The list was the hard part

Tracking compliance was never difficult once the requirements were written down against the right equipment. Writing them down was. An assistant that can read the regulations and your registry at the same time makes that first step an hour instead of a project, and the proof stays where it belongs: in the completed work.

Let the assistant draft the list. Check it. Let the work orders prove it.

If you want to see Compliance on your own systems, including placards and the MCP setup flow, we can walk you through it in about 20 minutes.