{"id":297663,"recorded_at":"2026-10-26T22:04:45.377952Z","observed_at":"2026-10-26T22:04:45.377804Z","subject_kind":"endpoint","subject":"fefbac61-9629-4118-b2ea-a4e9254d0d90","kind":"mcp.tools","method":"probe.mcp/1","body":{"count":16,"tools":[{"description":"Convert filament grams to metres (and back), compute volume and cost, and estimate how much is left on a spool from its gross weight. Knows densities for PLA, PETG, ABS, ASA, TPU, Nylon, PC, CF blends. Give either `grams` or `meters`.","inputSchema":{"additionalProperties":false,"properties":{"density_g_cm3":{"description":"Override density if known.","type":"number"},"diameter_mm":{"default":1.75,"type":"number"},"empty_spool_weight_grams":{"description":"Weight of the empty spool (typ. 130–250 g).","type":"number"},"grams":{"type":"number"},"material":{"default":"pla","description":"pla, petg, abs, asa, tpu, nylon, pc, pla-cf, petg-cf, pa-cf …","type":"string"},"meters":{"type":"number"},"spool_gross_weight_grams":{"description":"Weight of spool + remaining filament, to estimate what is left.","type":"number"},"spool_price_usd":{"type":"number"},"spool_weight_kg":{"default":1,"type":"number"}},"type":"object"},"name":"calculate_filament_usage"},{"description":"Compute the Z-axis \"magic number\" layer heights for a printer from its stepper step angle, microstepping and lead-screw pitch/starts, filtered to what suits the nozzle. Defaults match most Ender/Prusa-style printers (1.8°, 1/16, T8 2 mm × 4 starts → 0.04 mm steps).","inputSchema":{"additionalProperties":false,"properties":{"lead_screw_pitch_mm":{"default":2,"type":"number"},"lead_screw_starts":{"default":4,"type":"integer"},"max_layer_height_mm":{"type":"number"},"microstepping":{"default":16,"type":"integer"},"nozzle_diameter_mm":{"default":0.4,"type":"number"},"step_angle_degrees":{"default":1.8,"type":"number"}},"type":"object"},"name":"calculate_layer_heights"},{"description":"Estimate what an FDM print costs (material, electricity, machine wear, labor, failure allowance) and a suggested selling price. Needs the print weight in grams and time in hours from the slicer; all other inputs have sensible defaults (1 kg spool at $20, 120 W printer, $0.12/kWh, 5% failures).","inputSchema":{"additionalProperties":false,"properties":{"electricity_cost_per_kwh":{"default":0.12,"type":"number"},"failure_rate_percent":{"default":5,"type":"number"},"labor_minutes":{"default":0,"description":"Hands-on time: slicing, removal, post-processing.","type":"number"},"labor_rate_per_hour":{"default":0,"type":"number"},"markup_percent":{"default":0,"description":"Profit markup to compute a selling price.","type":"number"},"print_time_hours":{"description":"Print time in hours (e.g. 3.5).","type":"number"},"print_weight_grams":{"description":"Filament used, from the slicer.","type":"number"},"printer_cost_usd":{"default":0,"description":"Printer purchase price, for depreciation. 0 to skip.","type":"number"},"printer_lifespan_hours":{"default":5000,"type":"number"},"printer_power_watts":{"default":120,"type":"number"},"quantity":{"default":1,"type":"integer"},"spool_price_usd":{"default":20,"type":"number"},"spool_weight_kg":{"default":1,"type":"number"}},"required":["print_weight_grams","print_time_hours"],"type":"object"},"name":"calculate_print_cost"},{"description":"Check whether a hotend can keep up: volumetric flow (mm³/s) = layer height × line width × speed, compared against the hotend limit, plus the maximum safe speed. Accepts a hotend preset name (stock, v6, bambu, volcano, rapido, high-flow, goliath…) or an explicit max flow.","inputSchema":{"additionalProperties":false,"properties":{"hotend":{"description":"Preset: stock, v6, ender3, prusa-mk3, prusa-mk4, bambu, volcano, rapido, dragon-hf, high-flow, chc-pro, goliath, voron","type":"string"},"layer_height_mm":{"default":0.2,"type":"number"},"line_width_mm":{"default":0.42,"type":"number"},"max_volumetric_flow_mm3_s":{"type":"number"},"print_speed_mm_s":{"type":"number"}},"required":["print_speed_mm_s"],"type":"object"},"name":"calculate_volumetric_flow"},{"description":"Poll a PrintPal AI generation started with `generate_3d_model` in API-key mode. Returns status (queued/processing/completed/failed) and, when completed, a time-limited download URL for the mesh.","inputSchema":{"additionalProperties":false,"properties":{"generation_uid":{"type":"string"}},"required":["generation_uid"],"type":"object"},"name":"check_3d_generation"},{"description":"For mechanical / functional parts with exact dimensions — brackets, enclosures, adapters, gears, bins, knobs, mounts — open PrintPal's AI CAD agent with a ready-to-run brief. The agent writes editable OpenSCAD with parameter sliders, live 3D preview and STL/3MF/STEP export. This tool improves the user's description into a precise CAD brief (dimensions, tolerances, mounting, print orientation) and returns the link; the user clicks it to generate.","inputSchema":{"additionalProperties":false,"properties":{"description":{"description":"What the part is and what it must fit/do.","type":"string"},"dimensions":{"description":"Known dimensions in mm, e.g. \"60 x 40 x 20 mm, M3 holes 50 mm apart\".","type":"string"},"export_format":{"default":"stl","enum":["stl","3mf","step","scad"],"type":"string"},"material":{"description":"Intended filament (affects tolerances), e.g. PLA, PETG, TPU.","type":"string"}},"required":["description"],"type":"object"},"name":"design_parametric_cad"},{"description":"Fetch the full content of a PrintPal item returned by `search` (or any id of the form `model:<uid>`, `tool:<slug>`, `wiki:<slug>`, `doc:<slug>`, `resource:<slug>`, `project:<slug>`, `course:<slug>`). Returns the complete text (article body, transcript, build steps, BOM, model description and files) plus the canonical URL for citation.","inputSchema":{"additionalProperties":false,"properties":{"id":{"description":"Item id from `search`, e.g. \"wiki:stringing-and-oozing\".","type":"string"}},"required":["id"],"type":"object"},"name":"fetch"},{"description":"Recommend the right free PrintPal browser tool for a task: print cost / resin cost / layer height (magic numbers) / E-steps / flow rate / volumetric flow / filament spool / drying / shrinkage / Vref / Etsy profit calculators; generators for lithophanes, vases, name plates, 3D text, QR codes, bins, puzzles, mold boxes, flexi models, fidget clickers, Desk Pal, terrain maps, Minecraft maps; mesh repair, model splitter, converter, viewer, G-code viewer, AMS/multicolor painters; AI generators. Returns matching tools with links. Pass an empty task to list every tool.","inputSchema":{"additionalProperties":false,"properties":{"limit":{"default":6,"maximum":50,"minimum":1,"type":"integer"},"task":{"description":"What the user is trying to do, e.g. \"split a big model to fit my bed\".","type":"string"}},"type":"object"},"name":"find_3d_printing_tool"},{"description":"Turn a text prompt or an image into a print-ready 3D mesh (STL/GLB/OBJ geometry) with PrintPal's AI generator. Without a PrintPal API key this returns a link that opens the generator on printpal.io with the prompt prefilled; nothing is generated until the user clicks it. With an API key header (`Authorization: Bearer pp_live_…`) it submits the job to the user's own account, spends that account's credits, and returns a `generation_uid` that `check_3d_generation` accepts. Suited to organic/sculptural objects (figurines, animals, props); exact-dimension mechanical parts are handled by `design_parametric_cad`.","inputSchema":{"additionalProperties":false,"properties":{"format":{"default":"glb","enum":["glb","stl","obj","ply","fbx"],"type":"string"},"image_url":{"description":"Optional public PNG/JPEG/WebP URL for image-to-3D (API-key mode only).","type":"string"},"prompt":{"description":"What to generate, e.g. \"low-poly fox figurine, sitting\".","type":"string"},"quality":{"default":"default","description":"default/high/ultra for text or image; super*/superplus* tiers are image-only high-res.","enum":["default","high","ultra","super","super_texture","superplus","superplus_texture","superplus_1280","superplus_1280_texture","superplus_1536","superplus_1536_texture"],"type":"string"}},"required":["prompt"],"type":"object"},"name":"generate_3d_model"},{"description":"Get full details for one PrintPal model by uid: description, license, file formats, author, stats, and the page URL to download it. Accepts a uid from `search_3d_models` results or a printpal.io/model/<uid> URL.","inputSchema":{"additionalProperties":false,"properties":{"uid":{"description":"Model uid from search results or a printpal.io/model/<uid> URL.","type":"string"}},"required":["uid"],"type":"object"},"name":"get_3d_model"},{"description":"Read a full PrintPal build guide by slug: summary, bill of materials with quantities and links, downloadable files (STL/3MF/code), every build step, callouts and code blocks. Use when the user wants to actually follow or adapt a project.","inputSchema":{"additionalProperties":false,"properties":{"slug":{"description":"Project slug from search results or a printpal.io/projects/<slug> URL.","type":"string"}},"required":["slug"],"type":"object"},"name":"get_build_guide"},{"description":"Explain what is free on PrintPal, how AI generation credits and the CAD agent are priced, API access and the on-demand 3D printing service — with links to sign up, buy credits or subscribe. Call when the user asks about cost, limits, subscriptions or how to get more generations.","inputSchema":{"additionalProperties":false,"properties":{},"type":"object"},"name":"get_pricing_and_plans"},{"description":"Search everything on PrintPal for a 3D-printing query: community 3D models, free tools and calculators, wiki troubleshooting articles, OpenSCAD/AI-CAD docs, video tutorials, build guides and Academy courses. Returns ids accepted by `fetch` for the full content. Suited to general 3D printing questions such as \"why is my first layer not sticking\", \"PETG temperature\" or \"3D printed phone stand\".","inputSchema":{"additionalProperties":false,"properties":{"query":{"description":"Natural-language search query.","type":"string"}},"required":["query"],"type":"object"},"name":"search"},{"description":"Find printable 3D models (STL/3MF/OBJ) in the PrintPal community library by keyword — e.g. \"articulated dragon\", \"headphone stand\", \"Raspberry Pi 5 case\". Returns cards with thumbnail, author, tags, likes and a link to the model page where the files can be downloaded. Searches existing uploads only; new models are made by `generate_3d_model` (AI mesh) or `design_parametric_cad` (exact dimensions).","inputSchema":{"additionalProperties":false,"properties":{"category":{"description":"Optional category filter.","enum":["Art","Fashion","Gadgets","Hobby","Household","Learning","Miniatures","Tools","Toys & Games","Other"],"type":"string"},"limit":{"default":12,"maximum":30,"minimum":1,"type":"integer"},"query":{"description":"What the user wants to print, 1–6 words works best.","type":"string"}},"required":["query"],"type":"object"},"name":"search_3d_models"},{"description":"Find step-by-step PrintPal build guides: Arduino/ESP32 electronics + 3D-printed enclosures, robots, functional prints, printer mods, STEM classroom projects, props and toys. Each result lists difficulty, time, cost, part/file/step counts. Filter by category (electronics-robotics, functional-prints, home-workshop, stem-education, printer-mods, art-props, toys-games) or difficulty (beginner, intermediate, advanced). Leave query empty to browse featured guides.","inputSchema":{"additionalProperties":false,"properties":{"category":{"description":"Category slug or name.","type":"string"},"difficulty":{"enum":["beginner","intermediate","advanced"],"type":"string"},"limit":{"default":8,"maximum":25,"minimum":1,"type":"integer"},"query":{"type":"string"},"sort":{"default":"featured","enum":["featured","recent","popular","liked"],"type":"string"}},"type":"object"},"name":"search_build_guides"},{"description":"Search PrintPal's how-to content: the vendor-neutral 3D printing wiki (print quality, filaments, slicer settings, maintenance, error codes, safety), OpenSCAD + AI-CAD docs, short video tutorials with transcripts, and free Academy courses with certificates. Use `type` to narrow. Results include ids accepted by `fetch` for the full article text.","inputSchema":{"additionalProperties":false,"properties":{"limit":{"default":8,"maximum":25,"minimum":1,"type":"integer"},"query":{"type":"string"},"type":{"default":"all","enum":["all","wiki","docs","videos","courses"],"type":"string"}},"required":["query"],"type":"object"},"name":"search_learning_resources"}]},"body_sha256":"f62cf49ee7f025fc49c170b6162ce7f3d0f155c3ee2dedce08f8301b468864cb","prev_id":null,"leaf":"0x6b7b6cf146ed2d9ab97ced1bbdb1c983751bc2040a3b2d0298e631294da961fa","leaf_text":"{\"body\":\"f62cf49ee7f025fc49c170b6162ce7f3d0f155c3ee2dedce08f8301b468864cb\",\"id\":297663,\"kind\":\"mcp.tools\",\"method\":\"probe.mcp/1\",\"observed_us\":1793052285377804,\"prev\":null,\"subject\":\"fefbac61-9629-4118-b2ea-a4e9254d0d90\",\"subject_kind\":\"endpoint\"}","day":{"day":"2026-10-26","leaves":296695,"root":"0xf43e8dcc3d451a4788b26be904c55e8c4c0fa75c9666796c51db38d37e2c0df8","chained":"0x702d5ac508f08b0d1accf36af25822d8e5660367494edd17a642fb61e158a57a","anchor_chain":"eip155:5042002","anchor_tx":"0x495162f8936e19f0039918feebe6c307f327cd6bf8c37219620b1970041fa9ae","anchor_block":69251483},"proof":["0x6b7b3f8deb27e441c986fdc9a5b4755b01d8e8652ff4171af2df732e02ce2658","0x01498fc2a6c34dac01af46345116cf06f59ed775107fa4c6d0cb520ee999fd80","0x9b80cff334fd18b7932b75da5d1c1fc54d7a13dc910e7693ac3b4194ed7d4de8","0xea4f0333a390c7acceff0b628020831a63e32fa79326296e66df838251e8cc93","0xc6e965e877c87fd84be7fe0faccc4637d970b152be795006445514820ec722b1","0xc8c97922123f7cc31a364c1f4f5aa9589dad6e246712747ba27aa87ddc719378","0x1a507ea3a755d086d5887bbfe6867fbbed9e8212fe98fe5a8856cf77e1484eae","0x966c3b8dfcaf31f7df801a208e54f3d1a19321c3195baadb1d7014d4eb4c2396","0x959ad25eceb864e98140a3c5d86b87e2e87047d2132bf498fed758e10dc5218e","0x87894636102384a23857842def741b3253d54af0afaff0b11e7117549ccd8002","0xdfaea4285192101e7ab6e8e71853c71cef08df31a416be7a9f92f34cf897e13e","0x2a304c51963b65e3ca818b638b2e9a98297b7d6b6a3e14ecca2501aa13b9f556","0x9dc4d6f64bc3c323d2c45a28209068cd473b6979bd632a0d694bf94d19bc39df","0xfc9b5a81a7a83a1c735a4fe64590beb9db14d2366f463161358af28c3ea9a81d","0xa2d436d488e3600b0e5c3e3ed9c9234cd52853c59830b786334fd0c4292d9f40","0x47b89901b0f07938a6b9a66ddf35683903f79d756a7c7763665fd632758b08d0","0x9a83be955a206deb65b995adfd92c58fa31c95fbbf926bd199d300e70b08b26d","0x20704208aa6923d6b2450ef74ede87a6e0265d46447926038fe9506e9e154b2d","0x9b9ce5b74b9bab5121612ef6b64920a8d453cbf311096a423eef9702747e868a"]}