MoonBit SDK for the PicoGK MCP geometry kernel server
Dependencies
moon add gmlewis/picogk///|
async fn main {
// Launch the PicoGK MCP server (default: $HOME/.local/bin/picogk-mcp/PicoGK.Mcp)
let client = @picogk.new_client("")
// Initialize the geometry kernel (0.5mm voxels)
let _ = client.picogk_init(Some(0.5))
// Create a sphere
let res = client.create_sphere(0.0, 0.0, 0.0, 30.0, Some("body"))
println(res)
// Create a box cutout
let _ = client.create_box(-10.0, -10.0, -40.0, 10.0, 10.0, 40.0, Some("cutout"))
// Subtract box from sphere
let _ = client.boolean_subtract("body", "cutout", Some("result"))
// Smooth the result
let _ = client.smooth("result", 2.0, Some("smoothed"))
// Convert to mesh and export STL
let _ = client.voxels_to_mesh("smoothed", Some("mesh"))
let _ = client.save_stl("mesh", "/tmp/part.stl", None)
// Render a preview
let _ = client.render_to_image("smoothed", "/tmp/preview.png", None, None, None, None)
// Clean up
client.close()
println("Done! Part exported to /tmp/part.stl")
}| Category | Tools |
|---|---|
| Booleans | boolean_add, boolean_subtract, boolean_intersect, boolean_add_all, boolean_subtract_all |
| IO | save_stl, save_vdb, load_vdb, list_vdb_fields, save_svg, save_cli |
| Lattice | create_lattice, lattice_add_beam, lattice_add_sphere, lattice_to_voxels |
| Mesh | create_mesh, mesh_add_vertex, mesh_add_triangle, mesh_add_triangle_vertices, mesh_add_quad, voxels_to_mesh, mesh_to_voxels, mesh_from_stl, mesh_transform, mesh_mirror, mesh_append |
| Primitives | create_sphere, create_box, create_cylinder, create_capsule, create_torus |
| Query | get_bounding_box, get_volume, get_mesh_info, point_inside, surface_normal, closest_point, list_objects, delete_object, get_voxel_dimensions, voxels_is_empty, voxels_mem_usage, voxels_is_equal, ray_cast, measure_thickness, duplicate_object, delete_objects |
| Render | render_to_image, render_slice |
| Session | picogk_init, picogk_info, picogk_shutdown |
| Transforms | offset, double_offset, over_offset, smooth, trim, shell, fillet, project_z_slice, transform_voxels, circular_pattern |
./scripts/generate-mbt-picogk-sdk.py --verboseMoonBit SDK for the PicoGK MCP geometry kernel server
Dependencies