trane-mcp
Click on "Install 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., "@trane-mcplist all buildings and their current alarm status"
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.
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=trueenv varAsync 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 toolsget_equipmentA
Get full metadata for a single equipment unit including current health flags, model, and linked points.
| Name | Required | Description | Default |
|---|---|---|---|
| equipment_id | Yes |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| status | No | 'active', 'acknowledged', or 'cleared' | |
| limit | No |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| building_id | Yes |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No |
TDQS
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.
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.
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.
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.
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.
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.
list_trendsB
Inventory trend logs (historic telemetry). Used by an agent inspecting recent equipment behavior.
| Name | Required | Description | Default |
|---|---|---|---|
| equipment_id | No | ||
| limit | No |
TDQS
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 says 'inventory trend logs' implying a read operation, but fails to mention ordering, pagination, or what the logs contain (e.g., timestamps, values). It does not contradict annotations since none exist.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences long with no fluff. Every word serves a purpose: identifies the resource (trend logs) and the use case (inspecting equipment behavior). It is appropriately front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (list of historic telemetry), no output schema, and no annotations, the description is incomplete. It omits crucial details like return format, pagination behavior, and whether results can be filtered beyond equipment_id. An agent would lack sufficient information to use the tool correctly.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 0% with no descriptions for the 2 parameters (equipment_id, limit). The description adds no parameter-specific meaning; it only mentions 'equipment behavior' indirectly referencing equipment_id. Limit is entirely unexplained. For 0% coverage, the description should compensate but does not.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states 'Inventory trend logs (historic telemetry)' which gives a clear verb (list) and resource (trend logs). It distinguishes from sibling tools like list_equipment or list_alarms by focusing on telemetry data. However, it could be more specific about the scope of logs (e.g., by equipment id).
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description says 'Used by an agent inspecting recent equipment behavior', which implies a use case for equipment analysis. However, it does not provide explicit when-to-use or when-not-to-use guidance, nor does it 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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| equipment_id | Yes | ||
| point_name | Yes |
TDQS
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.
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.
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.
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.
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.
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.
| Name | Required | Description | Default |
|---|---|---|---|
| equipment_id | Yes | ||
| point_name | Yes | ||
| value | Yes | Analog or binary BACnet point value |
TDQS
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.
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.
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.
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.
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.
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.
8 tool updates
v0.1.0- First observed
get_equipment - First observed
list_alarms - First observed
list_buildings - First observed
list_equipment - First observed
list_schedules - First observed
list_trends - First observed
read_point - First observed
set_setpoint
TDQS
Each tool targets a distinct resource or action: equipment metadata, alarms, buildings, equipment list, schedules, trends, point read, setpoint write. No overlapping purposes.
All tools follow a consistent verb_noun pattern in snake_case (get_, list_, read_, set_). No mixing of conventions.
8 tools are well-scoped for a HVAC building management server, covering inventory, alarms, live data, and control without being excessive.
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
- HAVNOAuthapp.havnre
Read-only AI access to HAVN properties, leads, tasks, files, media, and analytics.
Read-only bank access for your AI agent. Connects Claude, ChatGPT, Cursor, Gemini, Codex.
Provide AI agents and automation tools with contextual access to blockchain data including balance…
Connects AI agents to live, verified financial data from 18,000+ institutions — ready to reason from
Related MCP Servers
AlicenseNot gradedqualityDmaintenanceConnects 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.4MIT
@inscada/mcp-serverofficial
AlicenseAqualityDmaintenanceEnables 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.3966MIT- AlicenseAqualityAmaintenanceProvides 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.21531MIT
- AlicenseAqualityCmaintenanceEnables LLMs to connect to factory PLC sensors, read register data, analyze predictive maintenance, and monitor energy consumption in industrial environments.3MIT
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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