Skip to main content
Glama

bulc_set_fds_detector

Configure furniture as fire detection sensors for smoke or heat monitoring in building simulations, specifying parameters like activation temperature and obscuration thresholds.

Instructions

Configure a furniture item as an FDS detector (heat or smoke). Heat detectors use RTI and activation temperature. Smoke detectors use optical obscuration threshold.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
furnitureIdYesFurniture ID to configure as detector
typeNoDetector type: 'heat' or 'smoke'. Default: heat
rtiNoResponse Time Index in (m·s)^0.5. Default: 50 for heat, 1.0 for smoke
activationTemperatureNoActivation temperature in Celsius (heat detector). Default: 57
alphaENoAlpha_E parameter for smoke detector. Default: 1.8
betaENoBeta_E parameter for smoke detector. Default: -1.1
obscurationThresholdNoObscuration threshold in %/m (smoke detector). Default: 3.28
deviceIdNoCustom device ID. Default: auto-generated

Implementation Reference

  • Handler logic for 'bulc_set_fds_detector' tool: validates input using SetDetectorSchema and sends 'set_fds_detector' command to BULC client via getBulcClient().
    case "bulc_set_fds_detector": { const validated = SetDetectorSchema.parse(args); result = await client.sendCommand({ action: "set_fds_detector", params: validated, }); break; }
  • Tool definition and input schema for 'bulc_set_fds_detector', including description, parameters for heat/smoke detectors, and annotations.
    { name: "bulc_set_fds_detector", description: "Configure a furniture item as an FDS detector (heat or smoke). " + "Heat detectors use RTI and activation temperature. " + "Smoke detectors use optical obscuration threshold.", inputSchema: { type: "object" as const, properties: { furnitureId: { type: "string", description: "Furniture ID to configure as detector", }, type: { type: "string", description: "Detector type: 'heat' or 'smoke'. Default: heat", enum: ["heat", "smoke"], }, // Heat detector params rti: { type: "number", description: "Response Time Index in (m·s)^0.5. Default: 50 for heat, 1.0 for smoke", }, activationTemperature: { type: "number", description: "Activation temperature in Celsius (heat detector). Default: 57", }, // Smoke detector params alphaE: { type: "number", description: "Alpha_E parameter for smoke detector. Default: 1.8", }, betaE: { type: "number", description: "Beta_E parameter for smoke detector. Default: -1.1", }, obscurationThreshold: { type: "number", description: "Obscuration threshold in %/m (smoke detector). Default: 3.28", }, deviceId: { type: "string", description: "Custom device ID. Default: auto-generated", }, }, required: ["furnitureId"], }, annotations: { readOnlyHint: false, destructiveHint: true, }, },
  • Zod runtime validation schema SetDetectorSchema used to parse and validate arguments in the handler.
    const SetDetectorSchema = z.object({ furnitureId: z.string(), type: z.enum(["heat", "smoke"]).optional(), rti: z.number().positive().optional(), activationTemperature: z.number().optional(), alphaE: z.number().optional(), betaE: z.number().optional(), obscurationThreshold: z.number().positive().optional(), deviceId: z.string().optional(), });
  • src/index.ts:84-94 (registration)
    Tool registration routing in main server handler: matches 'bulc_set_fds_detector' name and dispatches 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:40-51 (registration)
    Includes fdsDataTools (containing 'bulc_set_fds_detector' schema) in the full list of tools advertised via ListToolsRequest.
    const allTools = [ ...contextTools, // 8 tools: spatial context, home info, levels, undo/redo, save ...roomTools, // 5 tools: create, create_polygon, list, modify, delete ...wallTools, // 5 tools: create, create_rectangle, list, modify, delete ...furnitureTools, // 5 tools: catalog, place, list, modify, delete ...fdsDataTools, // 7 tools: get, fire_source, detector, sprinkler, hvac, thermocouple, clear ...meshTools, // 5 tools: list, create, auto, modify, delete ...simulationTools, // 4 tools: get_settings, time, output, ambient ...fdsRunTools, // 6 tools: preview, validate, export, run, status, stop ...resultTools, // 5 tools: open_viewer, list_datasets, point_data, aset, report ...evacTools, // 25 tools: setup, stairs, agents, run, results, advanced features ];

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/using76/BULC_MCP'

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