bulc_save
Save building design projects to files within the BULC fire simulation environment, enabling persistent storage and overwrite capabilities for architectural models.
Instructions
Save the current project to file.
Input Schema
TableJSON Schema
| Name | Required | Description | Default |
|---|---|---|---|
| path | No | File path to save to. If omitted, saves to current file (overwrites). |
Implementation Reference
- src/tools/context.ts:234-241 (handler)Executes the bulc_save tool by validating input with SaveSchema and sending a 'save' command to the BULC client.case "bulc_save": { const validated = SaveSchema.parse(args); result = await client.sendCommand({ action: "save", params: validated, }); break; }
- src/tools/context.ts:126-142 (schema)Tool definition for 'bulc_save' including metadata, description, input schema, and annotations.{ name: "bulc_save", description: "Save the current project to file.", inputSchema: { type: "object" as const, properties: { path: { type: "string", description: "File path to save to. If omitted, saves to current file (overwrites).", }, }, }, annotations: { readOnlyHint: false, destructiveHint: true, }, },
- src/tools/context.ts:160-162 (schema)Zod validation schema for bulc_save input parameters.const SaveSchema = z.object({ path: z.string().optional(), });
- src/index.ts:151-162 (registration)Registers routing for 'bulc_save' and other context tools to the handleContextTool function.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); }
- src/index.ts:40-51 (registration)Includes contextTools (containing bulc_save) in the complete list of available tools for the MCP server.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 ];