{"name":"io.github.codeofaxel/kiln","slug":"codeofaxel-kiln","title":"Kiln","description":"Kiln MCP server for agents: design, slice, print, monitor, and recover physical objects safely.","url":"https://mcp.market/server/codeofaxel-kiln","rating":null,"grade":"B","score":72,"certified":false,"status":"active","category":"media","tags":["media"],"presence":{"score":47,"stars":67,"forks":14,"downloads_week":169,"last_push_at":"2026-09-22T21:01:58.000Z","license":"AGPL-3.0"},"uptime":null,"claimed":false,"transport":"pypi","callable_via_gateway":false,"default_price_micros":0,"repository":"https://github.com/codeofaxel/Kiln","website":"https://kiln3d.com/?utm_source=mcp-registry&utm_medium=listing","version":"1.4.1","remotes":[],"packages":[{"registryType":"pypi","identifier":"kiln3d","version":"1.4.1","runtimeHint":"uvx","transport":{"type":"stdio"},"packageArguments":[{"value":"serve","type":"positional"}],"environmentVariables":[{"description":"URL of your 3D printer (OctoPrint, Moonraker, Creality, or Prusa Link)","name":"KILN_PRINTER_HOST"},{"description":"API key for your printer's REST API","isSecret":true,"name":"KILN_PRINTER_API_KEY"},{"description":"Printer type: octoprint, moonraker, creality, bambu, prusalink, elegoo, or serial","name":"KILN_PRINTER_TYPE"}]}],"tools":[{"name":"add_assembly_interface","description":"Add a mating interface between two parts in an assembly.","write_action":false,"price_micros":0,"input_schema":null},{"name":"add_assembly_part","description":"Add a part to an existing assembly.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_design_requirements","description":"Analyze a functional requirement and return technical recommendations.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_scad_code","description":"Analyze the structure of OpenSCAD code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_structural_risks","description":"Analyze an STL mesh for structural weak points.","write_action":false,"price_micros":0,"input_schema":null},{"name":"analyze_warping_risk","description":"Analyze warping risk for a 3D model based on geometry and material.","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_decoration","description":"Apply a saved decoration to a new model — proven settings, one call.","write_action":false,"price_micros":0,"input_schema":null},{"name":"apply_design_reinforcements","description":"Analyze a mesh for structural risks, then auto-apply fixes.","write_action":false,"price_micros":0,"input_schema":null},{"name":"arrange_parts_on_plate","description":"Pack multiple STL files onto a virtual build plate.","write_action":false,"price_micros":0,"input_schema":null},{"name":"assess_load_bearing","description":"Analyze load-bearing characteristics of a mesh from its geometry.","write_action":false,"price_micros":0,"input_schema":null},{"name":"audit_original_design","description":"Run a ruthless audit of an original design before printing.","write_action":true,"price_micros":0,"input_schema":null},{"name":"auto_arrange_parts_on_plate","description":"Calculate non-overlapping XY positions for multiple parts on a print plate.","write_action":false,"price_micros":0,"input_schema":null},{"name":"auto_color_by_height","description":"Split a 3D model into horizontal color zones by Z-height.","write_action":false,"price_micros":0,"input_schema":null},{"name":"auto_color_by_region","description":"Split a 3D model into color zones by geometric region.","write_action":false,"price_micros":0,"input_schema":null},{"name":"build_generation_prompt","description":"Build a design-aware generation prompt for original 3D creation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"build_parametric_prompt","description":"Build a prompt optimized for parametric OpenSCAD code generation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cache_design","description":"Cache a 3D design file for faster access and version tracking.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cache_design_with_source","description":"Cache a design file alongside its parametric source code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cache_model","description":"Add a 3D model file to the local cache for reuse across jobs.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_assembly_clearances","description":"Check clearances between all mating parts in an assembly.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_material_environment","description":"Check whether a material is compatible with an environment.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_multi_material_pairing","description":"Check if two materials can be co-printed in dual extrusion.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_print_readiness","description":"Single-call print readiness check with optional auto-repair.","write_action":false,"price_micros":0,"input_schema":null},{"name":"check_printer_material_compatibility","description":"Check if a specific printer can handle a material.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cloud_sync_configure","description":"Configure and start cloud sync.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cloud_sync_now","description":"Trigger an immediate cloud sync cycle.","write_action":false,"price_micros":0,"input_schema":null},{"name":"cloud_sync_status","description":"Get the current cloud sync status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compile_scad","description":"Compile OpenSCAD code into an STL file.","write_action":false,"price_micros":0,"input_schema":null},{"name":"compose_assembly_parts","description":"Compose all assembly parts into a single output STL file.","write_action":false,"price_micros":0,"input_schema":null},{"name":"consumer_onboarding","description":"Get the guided onboarding workflow for users without a 3D printer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"create_assembly","description":"Create a new empty assembly.","write_action":true,"price_micros":0,"input_schema":null},{"name":"decoration_info","description":"Get full details about a saved decoration.","write_action":false,"price_micros":0,"input_schema":null},{"name":"decoration_quota_status","description":"Check your decoration quota — how many decorations you've used this month.","write_action":false,"price_micros":0,"input_schema":null},{"name":"delete_cached_model","description":"Remove a model from the local cache (file and metadata).","write_action":true,"price_micros":0,"input_schema":null},{"name":"design_advisor","description":"Ask which generation method to use for a design idea (triage tool — call FIRST).","write_action":false,"price_micros":0,"input_schema":null},{"name":"design_improvement_plan","description":"Generate a complete structural improvement plan for a design.","write_action":false,"price_micros":0,"input_schema":null},{"name":"donate_info","description":"Get crypto wallet addresses to tip/donate to the Kiln project.","write_action":false,"price_micros":0,"input_schema":null},{"name":"encryption_status","description":"Check G-code encryption status and configuration.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_price","description":"Get an instant price estimate before requesting a full quote.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_print_cost_from_mesh","description":"Estimate total print cost from a 3D model file.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_structural_load","description":"Estimate safe structural load for a cantilevered section.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_support_material","description":"Estimate support material needed for a mesh.","write_action":false,"price_micros":0,"input_schema":null},{"name":"estimate_timeline","description":"Estimate order-to-delivery timeline with per-stage breakdown.","write_action":false,"price_micros":0,"input_schema":null},{"name":"export_audit_trail","description":"Export the safety audit trail as JSON or CSV.","write_action":false,"price_micros":0,"input_schema":null},{"name":"find_design_templates","description":"Find public design-template summaries for a use case.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cached_design","description":"Retrieve a cached design by ID.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_cached_model","description":"Return details for a specific cached model.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_design_source","description":"Retrieve the parametric source code for a cached design.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_design_template_info","description":"Get one template's public discovery and safety-floor fields.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_event_handlers","description":"Return event type → handler mappings to subscribe.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_joint_recommendation","description":"Get recommended clearance settings for a joint type and material pairing.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_material_design_profile","description":"Compatibility lookup for a material's public design floor.","write_action":false,"price_micros":0,"input_schema":null},{"name":"get_post_processing_guide","description":"Get bounded public post-processing help for one goal.","write_action":true,"price_micros":0,"input_schema":null},{"name":"get_print_diagnostic","description":"Get a comprehensive print diagnostic combining multiple knowledge sources.","write_action":false,"price_micros":0,"input_schema":null},{"name":"infer_print_settings","description":"Infer optimal slicer settings from structural analysis.","write_action":false,"price_micros":0,"input_schema":null},{"name":"insert_into_scad","description":"Insert code into an OpenSCAD module without replacing it.","write_action":true,"price_micros":0,"input_schema":null},{"name":"iterate_design","description":"Automated design iteration: generate -> validate -> improve -> regenerate.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kiln_signin","description":"Start a Kiln sign-in via OAuth.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kiln_signin_poll","description":"Check whether a sign-in started by ``kiln_signin`` is done.","write_action":false,"price_micros":0,"input_schema":null},{"name":"kiln_viewer_payload","description":"Internal support for Kiln's inline 3D viewer.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_cached_designs","description":"List cached designs, optionally filtered by material.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_cached_models","description":"List all models in the local cache, newest first.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_credentials","description":"List all stored credentials (metadata only, no plaintext).","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_decorations","description":"List all saved decorations in the library.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_design_components","description":"List available pre-built OpenSCAD components from bundled libraries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_design_materials","description":"List public material identifiers and safety/process summaries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"list_design_templates_catalog","description":"List public design-template discovery summaries.","write_action":false,"price_micros":0,"input_schema":null},{"name":"lock_safety_profile","description":"Lock a safety profile so agents cannot modify its limits.","write_action":false,"price_micros":0,"input_schema":null},{"name":"manage_team_member","description":"Add, remove, or update a team member.","write_action":false,"price_micros":0,"input_schema":null},{"name":"match_design_components","description":"Find pre-built library components matching a design description.","write_action":false,"price_micros":0,"input_schema":null},{"name":"match_design_requirements","description":"Identify which functional requirements apply to a design task.","write_action":false,"price_micros":0,"input_schema":null},{"name":"modify_scad_module","description":"Replace a module in OpenSCAD code with new implementation.","write_action":false,"price_micros":0,"input_schema":null},{"name":"optimize_print_orientation","description":"Auto-rotate a mesh to minimize overhangs and maximize bed contact.","write_action":false,"price_micros":0,"input_schema":null},{"name":"optimize_template_params","description":"Find the structurally strongest version of a parametric template.","write_action":false,"price_micros":0,"input_schema":null},{"name":"parse_scad_parameters","description":"Parse parameter variables from OpenSCAD code.","write_action":false,"price_micros":0,"input_schema":null},{"name":"printer_usage_summary","description":"Show printer count, included allowance, and overage charges.","write_action":false,"price_micros":0,"input_schema":null},{"name":"rebuild_design","description":"Re-execute the full build pipeline from a saved design recipe.","write_action":false,"price_micros":0,"input_schema":null},{"name":"recommend_design_material","description":"Recommend material for engineering/functional parts (strength, heat, environment).","write_action":false,"price_micros":0,"input_schema":null},{"name":"recommend_design_reinforcements","description":"Recommend specific reinforcements for an STL mesh.","write_action":false,"price_micros":0,"input_schema":null},{"name":"resolve_filament_profile","description":"Resolve a material name or brand ID to a unified filament profile.","write_action":false,"price_micros":0,"input_schema":null},{"name":"retrieve_credential","description":"Decrypt and return a stored credential.","write_action":false,"price_micros":0,"input_schema":null},{"name":"save_decoration","description":"Save a proven decoration to the library for reuse on future models.","write_action":false,"price_micros":0,"input_schema":null},{"name":"search_cached_models","description":"Search the local model cache by name, source, tags, or prompt text.","write_action":false,"price_micros":0,"input_schema":null},{"name":"solve_template_constraints","description":"Solve parametric constraints to find valid template parameters.","write_action":false,"price_micros":0,"input_schema":null},{"name":"stage_smoke_test","description":"Open a small test cube on Kiln's 3D stage.","write_action":false,"price_micros":0,"input_schema":null},{"name":"store_credential","description":"Encrypt and store a credential (API key, webhook secret, etc.).","write_action":false,"price_micros":0,"input_schema":null},{"name":"suggest_material_for_order","description":"Suggest a material when ordering a print from a fulfillment provider.","write_action":true,"price_micros":0,"input_schema":null},{"name":"supported_shipping_countries","description":"List all countries supported for fulfillment shipping.","write_action":false,"price_micros":0,"input_schema":null},{"name":"tax_estimate","description":"","write_action":false,"price_micros":0,"input_schema":null},{"name":"tax_jurisdiction_lookup","description":"Look up tax details for a specific region (rate, type, B2B exemptions).","write_action":false,"price_micros":0,"input_schema":null},{"name":"tax_jurisdictions","description":"List all 22 supported regions so the agent can match the user's location.","write_action":false,"price_micros":0,"input_schema":null},{"name":"troubleshoot_print_issue","description":"Diagnose a 3D printing problem by material and symptom.","write_action":false,"price_micros":0,"input_schema":null},{"name":"tweak_and_compile_scad","description":"Update a parameter in OpenSCAD code and recompile to STL.","write_action":true,"price_micros":0,"input_schema":null},{"name":"unlock_safety_profile","description":"Unlock a previously locked safety profile.","write_action":false,"price_micros":0,"input_schema":null},{"name":"update_scad_parameter","description":"Update a parameter value in OpenSCAD code.","write_action":true,"price_micros":0,"input_schema":null},{"name":"uptime_report","description":"Get rolling uptime statistics and SLA status.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_assembly","description":"Validate an assembly for correctness and printability.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_design_for_requirements","description":"Validate a 3D model against functional design requirements.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_scad_parameters","description":"Validate OpenSCAD parameters against material design limits.","write_action":false,"price_micros":0,"input_schema":null},{"name":"validate_shipping_address","description":"Validate and normalize a shipping address for fulfillment orders.","write_action":false,"price_micros":0,"input_schema":null}],"scan":{"score":72,"grade":"B","scanned_at":"2026-09-22T21:29:09.482Z","report":{"scannerVersion":"0.1.9","scannedAt":"2026-09-22T21:29:09.489Z","components":{"code":{"score":20,"max":25,"notes":["290 source files scanned"]},"reliability":{"score":-1,"max":20,"notes":["no gateway calls yet and no remote to probe"]},"poisoning":{"score":-1,"max":15,"notes":["tools not inspected (local package is not executed); not counted"]},"auth":{"score":6,"max":15,"notes":["static API keys via environment variables"]},"maintenance":{"score":15,"max":15,"notes":["last push 0 days ago"]},"identity":{"score":6,"max":10,"notes":["registry namespace matches repository owner"]}},"findings":[{"id":"exec.shell-true","severity":"medium","component":"code","title":"subprocess with shell=True","evidence":"kiln3d-1.4.1/src/kiln/cli/main.py: … result = subprocess.run(cmd, shell=True, capture_output=True, text=True, timeou…"}],"inputs":{"packages":[{"registryType":"pypi","identifier":"kiln3d","version":"1.4.1","found":true,"weeklyDownloads":169,"license":"AGPL-3.0-or-later","dependencyCount":35,"publishedAt":"2026-08-19T04:20:08.692091Z","repositoryUrl":"https://github.com/codeofaxel/Kiln"}],"repo":{"found":true,"owner":"codeofaxel","repo":"Kiln","archived":false,"pushedAt":"2026-09-22T21:01:58Z","stars":67,"forks":14,"openIssues":0,"ownerType":"User","ownerAvatarUrl":"https://avatars.githubusercontent.com/u/254173508?v=4","ownerCreatedAt":"2026-01-10T21:05:08Z","license":"AGPL-3.0"},"icon":{"url":"https://www.kiln3d.com/favicon.svg","source":"site"},"presence":{"stars":67,"forks":14,"downloadsWeek":169,"license":"AGPL-3.0","lastPushAt":"2026-09-22T21:01:58.000Z","score":47}}}},"grade_history":[],"reviews":[]}