Skip to main content
Glama

bulc_create_mesh

Define a computational domain for fire simulation by creating an FDS mesh with specified dimensions and cell counts.

Instructions

Create a new FDS computational mesh with specified dimensions and cell count. The mesh defines the computational domain for fire simulation.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
meshIdNoMesh identifier. Default: MESH_1, MESH_2, etc.
xMinYesMinimum X coordinate in meters
xMaxYesMaximum X coordinate in meters
yMinYesMinimum Y coordinate in meters
yMaxYesMaximum Y coordinate in meters
zMinNoMinimum Z coordinate in meters. Default: 0
zMaxYesMaximum Z coordinate in meters
iCellsNoNumber of cells in X direction
jCellsNoNumber of cells in Y direction
kCellsNoNumber of cells in Z direction
cellSizeNoUniform cell size in meters (alternative to specifying cell counts). If provided, cell counts will be calculated automatically.

Implementation Reference

  • The handler logic for the 'bulc_create_mesh' tool. Validates input parameters using CreateMeshSchema and sends a 'create_mesh' command to the BULC client via getBulcClient().
    case "bulc_create_mesh": { const validated = CreateMeshSchema.parse(args); result = await client.sendCommand({ action: "create_mesh", params: validated, }); break; }
  • Zod schema used for runtime validation of input arguments to the bulc_create_mesh tool handler.
    const CreateMeshSchema = z.object({ meshId: z.string().optional(), xMin: z.number(), xMax: z.number(), yMin: z.number(), yMax: z.number(), zMin: z.number().optional(), zMax: z.number(), iCells: z.number().int().positive().optional(), jCells: z.number().int().positive().optional(), kCells: z.number().int().positive().optional(), cellSize: z.number().positive().optional(), });
  • The tool definition object for 'bulc_create_mesh' exported in meshTools array, which is included in the global allTools list and registered with the MCP server via ListToolsRequestHandler.
    { name: "bulc_create_mesh", description: "Create a new FDS computational mesh with specified dimensions and cell count. " + "The mesh defines the computational domain for fire simulation.", inputSchema: { type: "object" as const, properties: { meshId: { type: "string", description: "Mesh identifier. Default: MESH_1, MESH_2, etc.", }, xMin: { type: "number", description: "Minimum X coordinate in meters", }, xMax: { type: "number", description: "Maximum X coordinate in meters", }, yMin: { type: "number", description: "Minimum Y coordinate in meters", }, yMax: { type: "number", description: "Maximum Y coordinate in meters", }, zMin: { type: "number", description: "Minimum Z coordinate in meters. Default: 0", }, zMax: { type: "number", description: "Maximum Z coordinate in meters", }, iCells: { type: "integer", description: "Number of cells in X direction", }, jCells: { type: "integer", description: "Number of cells in Y direction", }, kCells: { type: "integer", description: "Number of cells in Z direction", }, cellSize: { type: "number", description: "Uniform cell size in meters (alternative to specifying cell counts). " + "If provided, cell counts will be calculated automatically.", }, }, required: ["xMin", "xMax", "yMin", "yMax", "zMax"], }, annotations: { readOnlyHint: false, destructiveHint: true, }, },
  • Routing logic in the main MCP CallToolRequestHandler that dispatches 'bulc_*_mesh' tools to the handleMeshTool function.
    if (name.startsWith("bulc_") && name.includes("mesh")) { return await handleMeshTool(name, safeArgs);

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