snapmaker-u1-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| U1_MODEL_DIR | No | Directory containing the models allowed to be sliced. The MCP server only accepts model paths relative to U1_MODEL_DIR. | |
| U1_OUTPUT_DIR | No | Directory where slice run artifacts and generated G-code are written. | |
| SNAPMAKER_ORCA_BIN | No | Path to the internal Snapmaker Orca binary (e.g. /path/to/snapmaker-orca/internal/orca-slicer). Use this instead of SNAPMAKER_ORCA_APPIMAGE if you have the internal binary path. | |
| SNAPMAKER_PROFILE_DIR | No | Path to the Snapmaker Orca profiles directory. Optional if auto-discovered. | |
| SNAPMAKER_ORCA_APPIMAGE | No | Path to the Snapmaker-Orca AppImage (e.g. /path/to/Snapmaker-Orca.AppImage). |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| u1_healthB | Check Snapmaker Orca CLI, U1 profile discovery, and output directory access. |
| u1_list_modelsA | List STL/3MF models inside U1_MODEL_DIR. |
| u1_list_profilesB | List discovered Snapmaker U1 profile names by default; set details=true for full metadata. |
| u1_get_profileA | Return one resolved machine/process/filament profile by exact name or file stem. |
| u1_profile_source_chainC | Return child-to-parent profile inheritance source chain. |
| u1_diff_profilesC | Diff two resolved profiles of the same kind. |
| u1_explain_profile_selectionC | Validate and summarize a machine/process/filament selection. |
| u1_sliceC | Slice an STL/3MF model for Snapmaker U1 and return compact G-code analysis; set verbose=true for logs. |
| u1_analyze_gcodeC | Analyze a generated G-code file under U1_OUTPUT_DIR. |
| u1_list_runsC | List recent generated slice runs with compact metadata. |
| u1_get_runB | Return compact metadata and artifact availability for one run. |
| u1_get_run_logsB | Return stdout/stderr log tails for one run on explicit request. |
| u1_search_runsB | Search recent runs by model, filament, and/or status. |
| u1_export_run_reportC | Write a Markdown summary report into a run directory. |
| u1_export_runs_reportC | Write a Markdown comparison report for multiple runs. |
| u1_reproduce_runC | Re-slice a previous regular run from stored request metadata. |
| u1_delete_runA | Delete one generated run directory; requires confirm=true. |
| u1_compare_slicesC | Slice and compare multiple process/override variants. |
| u1_compare_orientationsC | Slice and compare controlled orientation variants. |
| u1_transform_modelB | Create a locally transformed STL copy under U1_OUTPUT_DIR/transformed. |
| u1_compare_transformed_orientationsD | Transform STL copies locally, then slice without Snapmaker Orca CLI rotation flags. |
| u1_inspect_modelC | Inspect STL/3MF dimensions and basic U1 fit information. |
| u1_diagnose_modelB | Return practical pre-slice model diagnostics and suggestions. |
| u1_mesh_printabilityB | Estimate simple STL overhang/contact metrics without slicing. |
| u1_multimaterial_readinessA | Report current multi-material support/readiness without enabling it. |
| u1_orientation_preflightB | Preflight axis-aligned orientation candidates without slicing rotated variants. |
| u1_render_previewC | Generate a lightweight SVG preview from model dimensions. |
| u1_render_preview_bundleC | Generate summary/top/front/side SVG previews for a model. |
| u1_inject_thumbnailC | Inject an SVG preview as comment metadata into a copied G-code file. |
| u1_list_recipesA | List built-in override recipes for common slicing goals. |
| u1_get_recipeC | Return one built-in override recipe. |
| u1_compare_recipesC | Compare built-in recipe override sets using the same process/filament. |
| u1_smoke_sliceC | Run Phase 0 real smoke slice with explicit process and filament profiles. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 33 tools
Most tools have clearly distinct purposes, such as render_preview vs render_preview_bundle and compare_slices vs compare_orientations. A few potential overlaps exist (e.g., inspect_model vs diagnose_model, mesh_printability vs orientation_preflight) but they address different aspects, so ambiguity is low overall.
All tools share the u1_ prefix and use snake_case. Most follow a verb_noun pattern (e.g., list_models, get_profile, export_run_report), though a few like 'health', 'profile_source_chain', and 'mesh_printability' are noun phrases. This deviation is minor and the naming remains predictable.
With 33 tools, the surface is large and feels heavy. Many are variations on similar themes (e.g., three compare tools, two render preview tools, and extensive run management), suggesting some consolidation could reduce the count without losing functionality. The domain is complex, but this exceeds the typical well-scoped range.
The tool set covers the full slicing workflow: model inspection, profile management, slicing, run tracking, comparisons, transformations, diagnostics, and preview rendering. Minor gaps exist (e.g., no profile editing or model upload), but the core lifecycle is well-supported and no critical dead ends are apparent.