Skip to main content
Glama
NoBanks
by NoBanks

markdown

trane-mcp

MCP server for Trane Technologies Tracer SC+ Building Automation System (BAS) API.

Overview

This MCP server provides AI agents with read access to Trane Tracer SC+ building automation systems. It wraps the Tracer SC+ API Builder surface to enable inventory and telemetry retrieval for buildings, equipment, BACnet points, alarms, schedules, and trend logs.

Tracer SC+ is a self-hosted building automation controller from Trane Technologies. This server connects to a customer's deployment and exposes 8 tools for agent-based BAS operations.

Related MCP server: @inscada/mcp-server

Features

  • Read-only by default - All tools are read operations that do not modify HVAC behavior

  • 8 BAS tools - Buildings, equipment, points, alarms, schedules, and trends

  • Setpoint writes gated - Requires explicit TRANE_ALLOW_SETPOINT_WRITE=true env var

  • Async httpx client - Non-blocking API calls with 60s timeout

  • Pydantic v2 schemas - Type-safe inputs and outputs

  • SSL verification toggle - Supports self-signed dev certificates

Installation

Available Tools

8 tools
get_equipmentA

Get full metadata for a single equipment unit including current health flags, model, and linked points.

ParametersJSON Schema
NameRequiredDescriptionDefault
equipment_idYes

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It indicates a read operation ('Get') and describes output fields, but does not disclose auth requirements, rate limits, or potential side effects. The description is adequate but not thorough.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

A single concise sentence that front-loads the action and key output details. Every word contributes value without redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's low complexity (single parameter, no output schema), the description covers core behavior and output. It does not address potential error conditions or exact schema of returned data, but is sufficient for a simple retrieval tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, meaning the description adds no information about the sole parameter (equipment_id) beyond its type and requirement in the schema. The description does not explain what equipment_id is or how to obtain it, leaving ambiguity.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool retrieves full metadata for a single equipment unit, listing specific fields like health flags, model, and linked points. This distinguishes it from sibling tools like list_equipment (which returns multiple units) and read_point (which focuses on a single point).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

No explicit guidance on when to use this tool versus alternatives. The description does not mention context, prerequisites, or exclusions, leaving the agent to infer usage from the tool's name and sibling list.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_alarmsB

List active alarms across the operator's Tracer SC+ deployment. Used by an on-call agent triaging what is unhealthy.

ParametersJSON Schema
NameRequiredDescriptionDefault
statusNo'active', 'acknowledged', or 'cleared'
limitNo

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description must disclose behavioral traits. It only states 'list active alarms' but does not explain if it returns partial results, pagination, or whether it is read-only (though listing implies read). No mention of side effects or authentication requirements.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences that are front-loaded: first sentence states what the tool does, second provides context. No superfluous words. Efficient and clear.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

There is no output schema, so the description should hint at return format. It does not. However, for a simple list tool with clear use case, it is minimally adequate. Lacks mention of prerequisites or authentication.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 50% (status has a description; limit has none). The description adds no additional meaning to the parameters; it does not explain how status or limit affect the results or how to use them effectively.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the verb 'list', the resource 'alarms', and the scope 'active alarms across the operator's Tracer SC+ deployment'. It also provides a use case ('Used by an on-call agent triaging what is unhealthy'), which distinguishes it from sibling tools like list_equipment or list_buildings.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for on-call triage but does not explicitly state when to use this tool over alternatives like list_trends or read_point. There is no mention of when not to use it or conditions for filtering by status or limit.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_buildingsA

List buildings managed by the operator's Trane Tracer SC+ instance. Standard read path for an agent that needs to enumerate the BAS surface.

ParametersJSON Schema
NameRequiredDescriptionDefault

No parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden. It implies a read-only operation but does not explicitly state that it is non-destructive, mention authentication needs, or describe any side effects. The description is minimal but not misleading.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It is front-loaded with the core action and immediately provides context.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a tool with no parameters and no output schema, the description sufficiently explains what it does and when to use it. However, it could hint at the output format (e.g., list of building identifiers) to be more complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has zero parameters, so the baseline is 4. The description adds no parameter detail because there are none. Schema coverage is 100% by definition, so no deduction needed.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('List buildings') and the specific context ('managed by the operator's Trane Tracer SC+ instance'). It also distinguishes this from sibling tools like list_equipment by noting it is the 'standard read path' for enumerating the BAS surface.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides a clear context for use ('Standard read path for an agent that needs to enumerate the BAS surface'). However, it does not explicitly exclude when not to use it or mention alternatives among siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_equipmentA

List HVAC equipment at a building (AHUs, chillers, boilers, VAV boxes, fan coils, etc.). Used by an agent scoping work for a building.

ParametersJSON Schema
NameRequiredDescriptionDefault
building_idYes

TDQS

A3.5/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations provided. The description lacks behavioral details such as whether it is read-only, pagination, sorting, or return format. Only states that it lists equipment.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, no wasted words. Could be more structured (e.g., bullet points) but efficient overall.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple list tool with one parameter, the description covers the core purpose. Missing details on return format or potential pagination, which reduces completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%. The description adds minimal meaning for the parameter (building_id) by implying context but does not explain its format, source, or expected values.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it lists HVAC equipment at a building, with examples. It distinguishes from sibling tools like 'get_equipment' (likely single item) and other list tools.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It specifies use case: 'scoping work for a building'. No explicit when-not-to-use or alternatives, but the context is clear and appropriate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

list_schedulesB

Inventory operating schedules for buildings + equipment. Used by an agent planning around occupancy or seasonal modes.

ParametersJSON Schema
NameRequiredDescriptionDefault
limitNo

TDQS

B3.1/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must fully disclose behavioral traits. It only implies a read operation ('inventory') without confirming read-only status, side effects, or any other behaviors. This is a significant gap.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise with two sentences, front-loaded with the core purpose. The second sentence adds valuable context, and there is no fluff.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (1 parameter, no output schema), the description is adequate but incomplete. It fails to explain the output format or that 'limit' controls pagination, which is essential for effective use.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters1/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The schema has 0% description coverage, and the description does not mention the 'limit' parameter at all. The description adds no meaning beyond the schema, leaving the agent without guidance on how to use the parameter.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly identifies the tool as inventorying operating schedules for buildings and equipment, distinguishing it from siblings like list_equipment and list_buildings. However, the verb 'inventory' is somewhat vague, slightly reducing precision.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explicitly states it is 'used by an agent planning around occupancy or seasonal modes,' providing clear context for when to use the tool. It does not list alternatives or when not to use it, but the context is sufficient.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

read_pointB

Read the current value of a BACnet point on equipment (e.g. supply-air temperature, zone setpoint, damper position). Standard read path for live BAS state.

ParametersJSON Schema
NameRequiredDescriptionDefault
equipment_idYes
point_nameYes

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries full burden. It states 'Read', implying idempotent and read-only behavior, but does not explicitly confirm no side effects or disclose other traits like response format or behavior for invalid parameters. It is minimally adequate.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single efficient sentence with no wasted words. It is concise, though it could include more detail on parameter semantics without losing conciseness. Still, it is well-structured and front-loaded.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given no output schema, no annotations, and 0% parameter description coverage, the description is insufficient. It does not cover return format, error handling, or behavior for unknown points. The tool is simple, but the description leaves many usage questions unanswered.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 0%, yet the description adds no meaning beyond parameter names. It does not explain what equipment_id or point_name represent, or how to find valid values. For two required parameters, this is a significant gap.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool reads current BACnet point values on equipment, with specific examples (supply-air temperature, zone setpoint). It distinguishes from sibling tools like set_setpoint (write) and get_equipment (equipment details), making its purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies use for live BAS state reads ('standard read path for live BAS state'), but it does not explicitly state when to use this versus alternatives like list_trends for historical data or list_alarms for alarms. No when-not-to-use guidance is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

set_setpointA

Write a new setpoint value to equipment. Gated by TRANE_ALLOW_SETPOINT_WRITE=true because writes change real HVAC behavior in real buildings. The MCP refuses unless the operator has explicitly authorized writes.

ParametersJSON Schema
NameRequiredDescriptionDefault
equipment_idYes
point_nameYes
valueYesAnalog or binary BACnet point value

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses that writes change real HVAC behavior and are gated, which is important behavioral context. However, it does not detail success/error responses or potential side effects.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is two sentences with no wasted words. It is front-loaded with the core action and follows with critical constraints, making it efficient and well-structured.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has 3 required parameters and no output schema. The description lacks details on return values, error handling, and parameter formats, leaving significant gaps for an agent to use it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters2/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is only 33% (only 'value' has a minimal description: 'Analog or binary BACnet point value'). The description adds no additional meaning for 'equipment_id' or 'point_name', failing to compensate for low schema coverage.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action ('Write a new setpoint value to equipment') and the resource ('equipment'). It effectively distinguishes from sibling tools like 'read_point' (read vs. write) and 'list_equipment' (list vs. write).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains that writes are gated by 'TRANE_ALLOW_SETPOINT_WRITE=true' and that they change real HVAC behavior, implying writes require explicit authorization. While it does not list alternatives, the context is clear for when to use this tool.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. 8 tool updatesv0.1.0
    • First observedget_equipment
    • First observedlist_alarms
    • First observedlist_buildings
    • First observedlist_equipment
    • First observedlist_schedules
    • First observedlist_trends
    • First observedread_point
    • First observedset_setpoint

TDQS

A3.7/5.0
Disambiguation5/5

Each tool targets a distinct resource or action: equipment metadata, alarms, buildings, equipment list, schedules, trends, point read, setpoint write. No overlapping purposes.

Naming Consistency5/5

All tools follow a consistent verb_noun pattern in snake_case (get_, list_, read_, set_). No mixing of conventions.

Tool Count5/5

8 tools are well-scoped for a HVAC building management server, covering inventory, alarms, live data, and control without being excessive.

Completeness4/5

Covers monitoring and basic control (setpoint write) but lacks operations like schedule modification or alarm acknowledgment, which are minor gaps for the typical use case.

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Connects AI assistants to SkySpark and Haxall building automation systems by dynamically exposing SkySpark Axon functions as MCP tools. Enables natural language interaction with building data, equipment, and automation functions through real-time tool discovery.
    4
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Enables AI assistants to interact with inSCADA systems via the Model Context Protocol, providing 39 tools for live data, alarms, scripts, historical analysis, charts, and more.
    39
    66
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides AI agents with safe, governed read access to industrial control systems (OPC-UA, Modbus, S7, Mitsubishi, MTConnect, MQTT/Sparkplug) plus cross-protocol diagnostics for troubleshooting data breaks, alarm floods, and unhealthy tags.
    2
    153
    1
    MIT
  • A
    license
    A
    quality
    C
    maintenance
    Enables LLMs to connect to factory PLC sensors, read register data, analyze predictive maintenance, and monitor energy consumption in industrial environments.
    3
    MIT

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/NoBanks/trane-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server