bulc_set_fds_thermocouple
Configure furniture as FDS thermocouples to measure temperature at specific locations during fire simulations in BULC Building Designer.
Instructions
Configure a furniture item as an FDS thermocouple for temperature measurement. Used to record temperature at specific locations during simulation.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| furnitureId | Yes | Furniture ID to configure as thermocouple | |
| beadDiameter | No | Thermocouple bead diameter in mm. Default: 1.0 | |
| emissivity | No | Bead emissivity (0-1). Default: 0.9 | |
| deviceId | No | Custom device ID. Default: auto-generated |
Implementation Reference
- src/tools/fds-data.ts:402-408 (handler)Handler logic for the 'bulc_set_fds_thermocouple' tool: parses input arguments using Zod schema and sends a 'set_fds_thermocouple' command to the BULC client.case "bulc_set_fds_thermocouple": { const validated = SetThermocoupleSchema.parse(args); result = await client.sendCommand({ action: "set_fds_thermocouple", params: validated, }); break;
- src/tools/fds-data.ts:335-340 (schema)Zod validation schema for the tool's input parameters.const SetThermocoupleSchema = z.object({ furnitureId: z.string(), beadDiameter: z.number().positive().optional(), emissivity: z.number().min(0).max(1).optional(), deviceId: z.string().optional(), });
- src/tools/fds-data.ts:229-260 (schema)MCP tool definition including input schema, description, and annotations for 'bulc_set_fds_thermocouple'.{ name: "bulc_set_fds_thermocouple", description: "Configure a furniture item as an FDS thermocouple for temperature measurement. " + "Used to record temperature at specific locations during simulation.", inputSchema: { type: "object" as const, properties: { furnitureId: { type: "string", description: "Furniture ID to configure as thermocouple", }, beadDiameter: { type: "number", description: "Thermocouple bead diameter in mm. Default: 1.0", }, emissivity: { type: "number", description: "Bead emissivity (0-1). Default: 0.9", }, deviceId: { type: "string", description: "Custom device ID. Default: auto-generated", }, }, required: ["furnitureId"], }, annotations: { readOnlyHint: false, destructiveHint: true, }, },
- src/index.ts:84-94 (registration)Tool call routing in main MCP server handler: dispatches 'bulc_set_fds_thermocouple' and other FDS data tools to handleFdsDataTool.if ( name === "bulc_get_fds_data" || name === "bulc_set_fds_fire_source" || name === "bulc_set_fds_detector" || name === "bulc_set_fds_sprinkler" || name === "bulc_set_fds_hvac" || name === "bulc_set_fds_thermocouple" || name === "bulc_clear_fds_data" ) { return await handleFdsDataTool(name, safeArgs); }
- src/index.ts:45-45 (registration)Inclusion of fdsDataTools (containing 'bulc_set_fds_thermocouple') into the global allTools list served via ListToolsRequest....fdsDataTools, // 7 tools: get, fire_source, detector, sprinkler, hvac, thermocouple, clear