bulc_set_current_level
Set the active floor level for editing in building design software. New rooms and walls are automatically created on this selected level.
Instructions
Set which floor level is currently active for editing. New rooms/walls will be created on this level by default.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| level | Yes | Level index to set as current (0 = ground floor, 1 = first floor, etc.) |
Implementation Reference
- src/tools/context.ts:83-101 (schema)Tool definition including name, description, input schema for level index, and annotations.{ name: "bulc_set_current_level", description: "Set which floor level is currently active for editing. New rooms/walls will be created on this level by default.", inputSchema: { type: "object" as const, properties: { level: { type: "integer", description: "Level index to set as current (0 = ground floor, 1 = first floor, etc.)", }, }, required: ["level"], }, annotations: { readOnlyHint: false, destructiveHint: false, }, },
- src/tools/context.ts:156-158 (schema)Zod validation schema for the tool input ensuring level is a non-negative integer.const SetCurrentLevelSchema = z.object({ level: z.number().int().min(0), });
- src/tools/context.ts:209-216 (handler)Handler case that parses input with SetCurrentLevelSchema and sends 'set_current_level' action to BULC client.case "bulc_set_current_level": { const validated = SetCurrentLevelSchema.parse(args); result = await client.sendCommand({ action: "set_current_level", params: validated, }); break; }
- src/index.ts:40-51 (registration)Registration of all tools including contextTools (which contains bulc_set_current_level) for the listTools endpoint.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 ];
- src/index.ts:150-162 (registration)Routing logic in CallToolRequest handler that directs bulc_set_current_level calls to handleContextTool.// Context tools (get_spatial_context, get_home_info, levels, undo, redo, save) if ( name === "bulc_get_spatial_context" || name === "bulc_get_home_info" || name === "bulc_list_levels" || name === "bulc_create_level" || name === "bulc_set_current_level" || name === "bulc_undo" || name === "bulc_redo" || name === "bulc_save" ) { return await handleContextTool(name, safeArgs); }