PrintPal
3D printing: printable models, calculators, troubleshooting wiki, build guides, AI 3D + CAD design.
사용해야 할까요
품질 및 안전성
발견 사항 (1)
- LOWfetch에서
도구 정의와 프로토콜 준수에 대한 자동 분석을 기반으로 합니다.
컨텍스트 비용
이는 서버의 도구가 모델의 컨텍스트에 로드될 때마다 소비되는 대략적인 토큰 수입니다. 수치가 높을수록 다른 작업에 사용할 수 있는 주의가 줄어듭니다.
설치
원클릭 설치
`claude_desktop_config.json` 파일에 다음을 추가하세요:
{
"mcpServers": {
"printpal": {
"url": "https://printpal.io/mcp"
}
}
}원격 엔드포인트
https://printpal.io/mcpstreamable-http할 수 있는 일
도구 목록
도구 (16)
🟢search(query)
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".
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "Natural-language search query."
}
},
"required": [
"query"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"url": {
"type": "string"
},
"type": {
"type": "string"
},
"snippet": {
"type": "string"
}
},
"required": [
"id",
"title",
"url"
]
}
}
},
"required": [
"results"
]
}🟢fetch(id)
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.
입력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string",
"description": "Item id from `search`, e.g. \"wiki:stringing-and-oozing\"."
}
},
"required": [
"id"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"text": {
"type": "string"
},
"url": {
"type": "string"
},
"metadata": {
"type": "object"
}
},
"required": [
"id",
"title",
"text",
"url"
]
}🟢search_3d_models(query, category, limit)
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).
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string",
"description": "What the user wants to print, 1–6 words works best."
},
"category": {
"type": "string",
"description": "Optional category filter.",
"enum": [
"Art",
"Fashion",
"Gadgets",
"Hobby",
"Household",
"Learning",
"Miniatures",
"Tools",
"Toys & Games",
"Other"
]
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 30,
"default": 12
}
},
"required": [
"query"
],
"additionalProperties": false
}출력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"count": {
"type": "integer"
},
"results": {
"type": "array",
"items": {
"type": "object",
"properties": {
"uid": {
"type": "string"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
},
"url": {
"type": "string"
},
"thumbnail_url": {
"type": [
"string",
"null"
]
},
"author": {
"type": [
"string",
"null"
]
},
"category": {
"type": [
"string",
"null"
]
},
"tags": {
"type": "array",
"items": {
"type": "string"
}
},
"price_usd": {
"type": "number"
},
"is_free": {
"type": "boolean"
},
"likes": {
"type": "integer"
},
"views": {
"type": "integer"
}
}
}
},
"explore_url": {
"type": "string"
},
"generate_url": {
"type": "string"
}
},
"required": [
"query",
"count",
"results"
]
}🟢get_3d_model(uid)
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.
입력 스키마
{
"type": "object",
"properties": {
"uid": {
"type": "string",
"description": "Model uid from search results or a printpal.io/model/<uid> URL."
}
},
"required": [
"uid"
],
"additionalProperties": false
}🟢find_3d_printing_tool(task, limit)
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.
입력 스키마
{
"type": "object",
"properties": {
"task": {
"type": "string",
"description": "What the user is trying to do, e.g. \"split a big model to fit my bed\"."
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 50,
"default": 6
}
},
"additionalProperties": false
}🟢calculate_print_cost(print_weight_grams, print_time_hours, spool_price_usd, spool_weight_kg, printer_power_watts, ...)
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).
입력 스키마
{
"type": "object",
"properties": {
"print_weight_grams": {
"type": "number",
"description": "Filament used, from the slicer."
},
"print_time_hours": {
"type": "number",
"description": "Print time in hours (e.g. 3.5)."
},
"spool_price_usd": {
"type": "number",
"default": 20
},
"spool_weight_kg": {
"type": "number",
"default": 1
},
"printer_power_watts": {
"type": "number",
"default": 120
},
"electricity_cost_per_kwh": {
"type": "number",
"default": 0.12
},
"printer_cost_usd": {
"type": "number",
"description": "Printer purchase price, for depreciation. 0 to skip.",
"default": 0
},
"printer_lifespan_hours": {
"type": "number",
"default": 5000
},
"failure_rate_percent": {
"type": "number",
"default": 5
},
"labor_rate_per_hour": {
"type": "number",
"default": 0
},
"labor_minutes": {
"type": "number",
"description": "Hands-on time: slicing, removal, post-processing.",
"default": 0
},
"markup_percent": {
"type": "number",
"description": "Profit markup to compute a selling price.",
"default": 0
},
"quantity": {
"type": "integer",
"default": 1
}
},
"required": [
"print_weight_grams",
"print_time_hours"
],
"additionalProperties": false
}🟢calculate_filament_usage(grams, meters, material, density_g_cm3, diameter_mm, ...)
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`.
입력 스키마
{
"type": "object",
"properties": {
"grams": {
"type": "number"
},
"meters": {
"type": "number"
},
"material": {
"type": "string",
"description": "pla, petg, abs, asa, tpu, nylon, pc, pla-cf, petg-cf, pa-cf …",
"default": "pla"
},
"density_g_cm3": {
"type": "number",
"description": "Override density if known."
},
"diameter_mm": {
"type": "number",
"default": 1.75
},
"spool_price_usd": {
"type": "number"
},
"spool_weight_kg": {
"type": "number",
"default": 1
},
"spool_gross_weight_grams": {
"type": "number",
"description": "Weight of spool + remaining filament, to estimate what is left."
},
"empty_spool_weight_grams": {
"type": "number",
"description": "Weight of the empty spool (typ. 130–250 g)."
}
},
"additionalProperties": false
}🟢calculate_layer_heights(step_angle_degrees, microstepping, lead_screw_pitch_mm, lead_screw_starts, nozzle_diameter_mm, ...)
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).
입력 스키마
{
"type": "object",
"properties": {
"step_angle_degrees": {
"type": "number",
"default": 1.8
},
"microstepping": {
"type": "integer",
"default": 16
},
"lead_screw_pitch_mm": {
"type": "number",
"default": 2
},
"lead_screw_starts": {
"type": "integer",
"default": 4
},
"nozzle_diameter_mm": {
"type": "number",
"default": 0.4
},
"max_layer_height_mm": {
"type": "number"
}
},
"additionalProperties": false
}🟢calculate_volumetric_flow(layer_height_mm, line_width_mm, print_speed_mm_s, max_volumetric_flow_mm3_s, hotend)
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.
입력 스키마
{
"type": "object",
"properties": {
"layer_height_mm": {
"type": "number",
"default": 0.2
},
"line_width_mm": {
"type": "number",
"default": 0.42
},
"print_speed_mm_s": {
"type": "number"
},
"max_volumetric_flow_mm3_s": {
"type": "number"
},
"hotend": {
"type": "string",
"description": "Preset: stock, v6, ender3, prusa-mk3, prusa-mk4, bambu, volcano, rapido, dragon-hf, high-flow, chc-pro, goliath, voron"
}
},
"required": [
"print_speed_mm_s"
],
"additionalProperties": false
}🟢search_build_guides(query, category, difficulty, sort, limit)
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.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"category": {
"type": "string",
"description": "Category slug or name."
},
"difficulty": {
"type": "string",
"enum": [
"beginner",
"intermediate",
"advanced"
]
},
"sort": {
"type": "string",
"enum": [
"featured",
"recent",
"popular",
"liked"
],
"default": "featured"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 8
}
},
"additionalProperties": false
}🟢get_build_guide(slug)
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.
입력 스키마
{
"type": "object",
"properties": {
"slug": {
"type": "string",
"description": "Project slug from search results or a printpal.io/projects/<slug> URL."
}
},
"required": [
"slug"
],
"additionalProperties": false
}🟢search_learning_resources(query, type, limit)
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.
입력 스키마
{
"type": "object",
"properties": {
"query": {
"type": "string"
},
"type": {
"type": "string",
"enum": [
"all",
"wiki",
"docs",
"videos",
"courses"
],
"default": "all"
},
"limit": {
"type": "integer",
"minimum": 1,
"maximum": 25,
"default": 8
}
},
"required": [
"query"
],
"additionalProperties": false
}⚪generate_3d_model(prompt, image_url, quality, format)
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`.
입력 스키마
{
"type": "object",
"properties": {
"prompt": {
"type": "string",
"description": "What to generate, e.g. \"low-poly fox figurine, sitting\"."
},
"image_url": {
"type": "string",
"description": "Optional public PNG/JPEG/WebP URL for image-to-3D (API-key mode only)."
},
"quality": {
"type": "string",
"enum": [
"default",
"high",
"ultra",
"super",
"super_texture",
"superplus",
"superplus_texture",
"superplus_1280",
"superplus_1280_texture",
"superplus_1536",
"superplus_1536_texture"
],
"default": "default",
"description": "default/high/ultra for text or image; super*/superplus* tiers are image-only high-res."
},
"format": {
"type": "string",
"enum": [
"glb",
"stl",
"obj",
"ply",
"fbx"
],
"default": "glb"
}
},
"required": [
"prompt"
],
"additionalProperties": false
}🟢check_3d_generation(generation_uid)
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.
입력 스키마
{
"type": "object",
"properties": {
"generation_uid": {
"type": "string"
}
},
"required": [
"generation_uid"
],
"additionalProperties": false
}🟢design_parametric_cad(description, dimensions, material, export_format)
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.
입력 스키마
{
"type": "object",
"properties": {
"description": {
"type": "string",
"description": "What the part is and what it must fit/do."
},
"dimensions": {
"type": "string",
"description": "Known dimensions in mm, e.g. \"60 x 40 x 20 mm, M3 holes 50 mm apart\"."
},
"material": {
"type": "string",
"description": "Intended filament (affects tolerances), e.g. PLA, PETG, TPU."
},
"export_format": {
"type": "string",
"enum": [
"stl",
"3mf",
"step",
"scad"
],
"default": "stl"
}
},
"required": [
"description"
],
"additionalProperties": false
}🟢get_pricing_and_plans
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.
입력 스키마
{
"type": "object",
"properties": {},
"additionalProperties": false
}커뮤니티
증거