{"$schema": "https://static.modelcontextprotocol.io/schemas/2026-07-28/server-card.schema.json", "serverInfo": {"name": "io.printpal/printpal", "title": "PrintPal", "version": "1.0.0", "websiteUrl": "https://printpal.io", "icons": [{"src": "https://printpal.io/static/assets/img/printpal-icon.png", "mimeType": "image/png", "sizes": ["96x96"]}]}, "description": "PrintPal: search printable 3D models, use 3D-printing calculators, read the troubleshooting wiki, follow Arduino + 3D-printing build guides, and generate AI 3D models or parametric CAD parts.", "transport": {"type": "streamable-http", "endpoint": "https://printpal.io/mcp"}, "protocolVersion": "2026-07-28", "supportedVersions": ["2026-07-28", "2025-11-25", "2025-06-18", "2025-03-26"], "authentication": {"required": false, "optional": true, "schemes": [{"type": "bearer", "description": "PrintPal API key (pp_live_…) unlocks credit-metered AI generation tools.", "documentationUrl": "https://printpal.io/api/documentation"}]}, "capabilities": {"tools": {"listChanged": false}, "prompts": {"listChanged": false}, "resources": {"subscribe": false, "listChanged": false}}, "instructions": "PrintPal (printpal.io) is a 3D printing platform: a community library of printable 3D models, free 3D-printing tools and calculators, AI text/image-to-3D generation, an AI CAD agent for parametric OpenSCAD parts, Arduino + 3D-printing build guides, video tutorials, Academy courses and a troubleshooting wiki. Use `search` for any 3D-printing question and `fetch` to read a result in full. Prefer `search_3d_models` when the user wants something to print, `find_3d_printing_tool` for calculators/generators, the `calculate_*` tools for instant numbers, `search_build_guides` for projects, and `search_learning_resources` for how-to content. `generate_3d_model` and `design_parametric_cad` return a PrintPal link with the user's prompt prefilled (or run for real when an API key header is present). Always surface the returned PrintPal URL so the user can open it; cite wiki/docs pages by URL when answering troubleshooting questions.", "tools": [{"name": "search", "title": "Search PrintPal", "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\"."}, {"name": "fetch", "title": "Fetch a PrintPal item", "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."}, {"name": "search_3d_models", "title": "Search 3D models to print", "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)."}, {"name": "get_3d_model", "title": "Get 3D model details", "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."}, {"name": "find_3d_printing_tool", "title": "Find a PrintPal tool or calculator", "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."}, {"name": "calculate_print_cost", "title": "Calculate 3D print cost", "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)."}, {"name": "calculate_filament_usage", "title": "Filament weight ⇄ length ⇄ cost", "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`."}, {"name": "calculate_layer_heights", "title": "Layer height magic numbers", "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)."}, {"name": "calculate_volumetric_flow", "title": "Volumetric flow / max speed check", "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."}, {"name": "search_build_guides", "title": "Search build guides & projects", "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."}, {"name": "get_build_guide", "title": "Get a build guide (steps, BOM, files)", "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."}, {"name": "search_learning_resources", "title": "Search guides, videos & courses", "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."}, {"name": "generate_3d_model", "title": "Generate a 3D model with AI (text or image → STL/GLB/OBJ)", "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`."}, {"name": "check_3d_generation", "title": "Check AI 3D generation status / get download", "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."}, {"name": "design_parametric_cad", "title": "Design a parametric part with the AI CAD agent", "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."}, {"name": "get_pricing_and_plans", "title": "PrintPal pricing, credits & plans", "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."}], "documentationUrl": "https://printpal.io/docs", "privacyPolicyUrl": "https://printpal.io/privacy", "termsOfServiceUrl": "https://printpal.io/terms", "supportUrl": "https://printpal.io/contact-us", "openapiUrl": "https://printpal.io/mcp/openapi.json", "registry": {"name": "io.printpal/printpal", "serverJsonUrl": "https://printpal.io/static/mcp/server.json"}}