Kiln
Controle de agentes de IA sobre impressoras 3D reais — projetar, fatiar, imprimir, monitorar e recuperar em Bambu Lab, Creality, Prusa, Elegoo e outras.
Documentação
O servidor MCP de código aberto para impressão 3D.
O Kiln permite que agentes de IA (Claude Desktop, Claude Code, Codex ou qualquer cliente MCP personalizado) controlem impressoras 3D reais de ponta a ponta — Bambu Lab, Creality, Prusa, Elegoo, Voron, Sovol, AnkerMake, Artillery, FlashForge, QIDI, RatRig e SparkX. É compatível com OctoPrint, Moonraker/Klipper, PrusaLink e USB direto.
Em uma única conversa, um agente pode projetar uma peça, fatiá-la, colocá-la na fila da impressora certa, monitorar a câmera, recuperar-se de falhas e entregar o resultado. Sem intervenção humana no meio.
Lendo isto como um agente de IA? kiln3d.com/agents foi escrito para você, e não para a pessoa que está executando você: instalação, configuração do MCP, o ciclo do design à impressão e exatamente o que o Kiln se recusará a fazer e por quê.
pip install kiln3d
"um porta-copos com uma foto do meu cachorro Ash" — do início ao fim, a partir de uma única frase.
Assista à demonstração →
O Kiln é construído de forma aberta. Se ele tornou sua impressão mais divertida, ou apenas te poupou de uma dor de cabeça, uma ⭐ no repositório ajuda o próximo maker a encontrá-lo.
Início Rápido
Usando Claude Desktop? Instale o Kiln com um clique. Baixar kiln.mcpb e clique duas vezes nele — o Claude Desktop instala o Kiln e o conecta (apenas Claude Desktop: os passos 1 e 2 abaixo são como o Codex e qualquer outro aplicativo de IA se conectam), então esses passos não são seus. Duas coisas ainda são suas: OpenSCAD e os termos do Kiln — o comando os exibe e pede que você digite sua aceitação, por isso é seu e não da sua IA: uvx --from kiln3d kiln accept-terms. O pacote e esse comando rodam em uv — gratuito, com uma instalação de uma linha para cada plataforma nesse link. Se o Claude Desktop disser que o servidor falhou ao iniciar, é o uv que está faltando: instale-o e reinicie. As atualizações chegam com a extensão, não via kiln self-update.
Todos os outros — três passos. Depois, peça à sua IA para criar algo.
1. Instalar
pip install kiln3d
2. Conecte sua IA — o Kiln se configura sozinho dentro do Claude Desktop, Claude Code e Codex:
kiln signin # create your free account
kiln install-mcp # connects Kiln to your AI apps
Reinicie seu aplicativo de IA e ele poderá controlar sua impressora. (Claude Code e Codex podem até executar toda essa configuração por você — a versão de um único prompt está em kiln3d.com/install.) Usando um cliente MCP diferente? kiln install-mcp --print imprime a configuração — ou cole você mesmo:
Configuração MCP manual (qualquer cliente, sem necessidade de login)
{
"mcpServers": {
"kiln": {
"command": "python3",
"args": ["-m", "kiln", "serve"]
}
}
}
Não precisa instalar? Troque o comando por um executor sem instalação — "command": "uvx", "args": ["kiln3d", "serve"] (Python) ou "command": "npx", "args": ["kiln3d"] (Node). Mesmo servidor, nada para pip install.
Coloque isso no Claude Desktop, Claude Code, Codex, Cursor ou qualquer agente compatível com MCP. Funciona no nível gratuito até você fazer login.
3. Peça — cole uma frase como esta no seu agente. O Kiln faz o resto:
Faça um porta-copos com a foto do meu cachorro
Esse é todo o caminho feliz. Sua IA faz o design, o fatiamento e a impressão — você nunca toca em um CLI. Guia passo a passo específico por sistema operacional (Windows, WSL 2, Linux) em kiln3d.com/install.
[!TIP]
kiln doctorverifica toda a sua configuração e diz exatamente o que corrigir.kiln self-updateatualiza no local quando uma nova versão é lançada.
Prefere controlar você mesmo? (Tour pelo CLI)
# Discover printers on your network (mDNS + HTTP probe)
kiln discover
# Add your printer (see the printer table under "Supported Printers")
kiln auth --name my-printer --host http://octopi.local --type octoprint --api-key YOUR_KEY
# Other types:
# kiln auth --name prusa --host http://192.168.1.100 --type prusalink --api-key YOUR_KEY
# kiln auth --name klipper --host http://192.168.1.100:7125 --type moonraker
# kiln auth --name bambu --host 192.168.1.100 --type bambu --access-code LAN_CODE --serial SERIAL
kiln status # Printer state + job progress
kiln upload model.gcode # Upload a file
kiln print model.gcode # Start printing
kiln slice model.stl --print-after # Slice an STL and print in one step
kiln print *.gcode --queue # Batch print
kiln wait # Monitor a running print
kiln snapshot --save photo.jpg # Webcam snapshot
kiln history --status completed # Print history
kiln park --plan # Describe the safe park, send nothing; then --step 1, 2, 3
kiln home --plan # Same for the Home button; --plate-clear where Z homes onto the plate
kiln filament wipe --plan # Same for the wipe-pad pass; --plate-clear where its plan presses the plate
# Every command supports --json for agent consumption
kiln status --json
Opção global: --printer <name> define uma impressora específica por comando. A referência completa de comandos está em Project Docs.
Conecte um agente específico (Claude Code, Claude Desktop, variáveis de ambiente)
Claude Code — instale o plugin (uma vez: instale uv primeiro se não tiver — é gratuito e leva uma linha):
claude plugin marketplace add codeofaxel/Kiln
claude plugin install kiln@kiln
Ou conecte manualmente — adicione a .claude/settings.json (projeto) ou ~/.claude/settings.json (global):
{
"mcpServers": {
"kiln": { "command": "kiln", "args": ["serve"] }
}
}
O Claude Code usa seu ~/.kiln/config.yaml para credenciais da impressora (definidas via kiln setup ou kiln auth). Nenhuma variável de ambiente é necessária se uma impressora já estiver configurada.
Claude Desktop — adicione a ~/.config/Claude/claude_desktop_config.json:
{
"mcpServers": {
"kiln": {
"command": "python3",
"args": ["-m", "kiln", "serve"],
"env": {
"KILN_PRINTER_HOST": "http://192.168.1.100",
"KILN_PRINTER_API_KEY": "your_key",
"KILN_PRINTER_TYPE": "prusalink"
}
}
}
}
Defina KILN_PRINTER_TYPE para seu backend: octoprint, moonraker, bambu, prusalink, elegoo, duet ou usb — ou pule as variáveis de ambiente completamente se você já executou kiln setup.
Qualquer outro LLM (OpenRouter) — o Kiln funciona com qualquer modelo que suporte chamada de função compatível com OpenAI, não apenas Claude:
export KILN_OPENROUTER_KEY=sk-or-...
kiln agent --model openai/gpt-4o
kiln agent --model meta-llama/llama-3.1-70b-instruct --tier essential
Os níveis de ferramentas correspondem automaticamente à capacidade do modelo: essencial (15 ferramentas) para modelos menores, padrão (60 ferramentas) para intermediários, completo (135 ferramentas) para modelos mais fortes. Todas as 919 ferramentas estão disponíveis via MCP através de kiln serve.
Notas de configuração de plataforma e impressora (Linux/WSL 2, somente Ethernet, Bambu)
Pré-requisitos por tipo de impressora
| Impressora | --type | O que você precisa |
|---|---|---|
| Prusa MK4/XL/Mini+ | prusalink | IP + chave de API (Configurações › Rede › PrusaLink na tela LCD) |
| OctoPrint (qualquer impressora) | octoprint | URL do OctoPrint + chave de API (Configurações do Usuário › Chaves de Aplicativos) |
| Klipper/Moonraker | moonraker | URL do Moonraker (geralmente http://<ip>:7125) |
| Creality K1/K2/Hi/Ender V4/V3 KE | creality | IP + printer_model (ex.: creality_k1_max); verifica portas Moonraker locais |
| Bambu Lab | bambu | IP + número de série + código de acesso LAN, tudo na tela da impressora; Modo Somente LAN e Modo Desenvolvedor ativados para iniciar e controlar impressões |
| Elegoo (SDCP) | elegoo | Apenas IP — sem autenticação. Neptune 4 / OrangeStorm Giga usam moonraker. |
| Duet / RepRapFirmware | duet | Apenas IP, mais a senha da máquina se definida (M551 em config.g). |
| USB direto (Marlin) | usb | Apenas cabo USB — sem rede. Ender 3, Prusa MK3, CR-10, qualquer impressora Marlin/RepRap. |
O Kiln só precisa de alcance de IP na sua rede local. Impressoras somente Ethernet são totalmente suportadas.
Ferramentas opcionais: PrusaSlicer, OrcaSlicer ou BambuStudio para fatiar STL → G-code (brew install --cask prusaslicer); OpenSCAD para geração local de texto para 3D — instale a versão atual (brew install --cask openscad@snapshot); defina KILN_GEMINI_API_KEY para habilitar geometria gerada por Gemini.
Linux / WSL 2
pipx instala o Kiln em seu próprio ambiente isolado e coloca kiln no seu PATH. (O pacote pip é kiln3d; o comando CLI é kiln.)
sudo apt install pipx && pipx ensurepath
git clone https://github.com/codeofaxel/Kiln.git && cd Kiln
pipx install ./kiln
sudo apt install prusa-slicer # optional: slicing for printing
sudo snap install openscad --edge # optional: the design engine (current build)
kiln verify
# Update / uninstall
git pull && pipx install --force ./kiln
pipx uninstall kiln3d
Rede WSL 2: WSL 2 usa NAT, então a descoberta mDNS (kiln discover) não verá impressoras na sua rede doméstica. Conecte diretamente por IP (igual às configurações somente Ethernet).
Impressoras somente Ethernet (sem Wi-Fi)
O Kiln funciona igualmente via Ethernet e Wi-Fi — ele fala com as APIs da impressora via IP da LAN. Verifique se o endpoint da impressora responde e registre por IP:
curl http://<ip>/api/version # OctoPrint
curl http://<ip>:7125/server/info # Moonraker / Creality (local Moonraker)
curl -H "X-Api-Key: YOUR_KEY" http://<ip>/api/v1/status # Prusa Link
# Bambu uses MQTT — ensure port 8883 is reachable: nc -zv <ip> 8883
kiln auth --name my-printer --host http://<ip> --type prusalink --api-key YOUR_KEY
Se o PrusaSlicer não estiver no seu PATH: export KILN_SLICER_PATH=/path/to/prusa-slicer.
Bambu TLS e webcam
O Kiln fixa o certificado da impressora (TOFU) na primeira conexão em ~/.kiln/bambu_tls_pins.json. Substituições:
export KILN_BAMBU_TLS_MODE=ca # strict CA/hostname (usually fails on stock self-signed printers)
export KILN_BAMBU_TLS_MODE=insecure # legacy, no validation — trusted LANs only
export KILN_BAMBU_TLS_FINGERPRINT=0123abcd... # explicit SHA-256 pin
A captura da webcam depende do modelo: A1, A1 Mini, P1P, P1S servem quadros via TLS+JPEG (sem software extra). A série X1 (X1C, X1E) serve RTSPS, que o Kiln retransmite via ffmpeg — então, em uma X1, tanto os instantâneos quanto o stream ao vivo precisam de ffmpeg (brew install ffmpeg / sudo apt install ffmpeg). can_snapshot é relatado True para todos os modelos Bambu; em uma X1 sem ffmpeg, a tentativa gera um erro claro específico do modelo em vez de falhar silenciosamente.
Os níveis pagos (kiln3d.com/pricing) adicionam versionamento Git-para-3D, modelos de produto, manuais de montagem, fluxos de trabalho de frota, SSO + SCIM, webhooks de ERP e logs de auditoria de longo prazo.
Por que o Kiln?
- Um painel de controle, qualquer impressora — compatível com OctoPrint, Moonraker, Creality, Bambu Lab, Prusa Link, Elegoo, Serial. Gerencie uma frota mista de um só lugar.
- Sem impressora? Sem problema — Terceirize trabalhos para os mais de 150 serviços de manufatura da Craftcloud através do proxy hospedado, ou use o modo direto com suas próprias credenciais de provedor.
- Nativo de IA — 926 capacidades MCP e 245 comandos CLI construídos para agentes de IA. Não é uma interface web com uma API anexada.
- Descreva e imprima — Pipeline de linguagem natural para objeto físico: texto ou esboço → geração por IA → validação → fatiamento → impressão.
- Decore qualquer coisa — Códigos QR, fotos, logotipos, texto, SVGs e texturas procedurais (listras de tigre, mármore, camuflagem, veios de madeira, colmeia) em relevo ou rebaixados em qualquer modelo com um único comando.
- Manuais incluídos — Impressões de múltiplas partes podem gerar manuais de montagem em PDF imprimíveis com lista de materiais, renders de etapas isométricas, setas de encaixe e portões de verificação com pausa. (Business)
- Retome, não recomece — Impressão cancelada ou com falha? Retome da camada exata em que parou em qualquer impressora FDM suportada. Sem desperdício de filamento. (Pro)
- Modifique durante a impressão — Adicione decorações, anexe recursos ou troque materiais em uma impressão ao vivo com reversão atômica se algo der errado. (Pro)
- Roteamento inteligente de materiais — 25 materiais, 45 perfis de filamento específicos por marca (Bambu, Prusament, Polymaker e mais) em 11 famílias de materiais. Recomendações baseadas em intenção com consciência da capacidade da impressora.
- Impressões não falham silenciosamente — Aprendizado entre impressoras, recuperação automática de falhas, feedback de geração de IA em circuito fechado (impressões com falha melhoram automaticamente gerações futuras), verificações de segurança de pré-voo em cada trabalho.
- Impressões condenadas interrompidas cedo — Grande demais para a mesa de construção, ou um material que seu hotend não consegue derreter? Detectado antes que o filamento seja desperdiçado, rotacionado para caber quando possível, substituição com um comando. O Pro mostra a correção: área útil real, divisão mais limpa ou o material para o qual mudar.
- Buscar → Fatiar → Imprimir — Busque e baixe modelos 3D do MyMiniFactory e Cults3D (somente busca), fatie automaticamente com PrusaSlicer, OrcaSlicer ou BambuStudio, imprima — tudo a partir de uma única conversa com o agente.
- Segurança em escala — 51 perfis de segurança nomeados por impressora, validação de G-code, watchdog do aquecedor, logs de auditoria à prova de adulteração. O Enterprise adiciona G-code criptografado em repouso com rotação de chaves, perfis bloqueáveis, RBAC, SSO, agrupamento de sites de frota, rastreamento de custos por projeto e PostgreSQL HA.
Impressoras Suportadas
| Backend | Status | Impressoras |
|---|---|---|
| OctoPrint | Estável | Compatível com qualquer impressora conectada via OctoPrint (Prusa, Ender, custom) |
| Moonraker | Estável | Impressoras baseadas em Klipper (Voron, Ratrig, etc.) |
| Creality | Estável quando o Moonraker está acessível | SPARKX i7, K1/K1 Max/K1C/K1 SE, K2/K2 Pro/K2 Plus/K2 SE, Creality Hi, Ender-3 V4/V3 KE, Ender-5 Max, CR-10 SE via Moonraker local. Impressoras Creality Marlin mais antigas usam serial ou octoprint. |
| Bambu | Estável | Bambu Lab X1C, X1E, P1S, P1P, P2S, A1, A1 Mini, A2L, H2S, H2D, H2D Pro, H2C, X2D (via LAN MQTT) |
| Prusa Link | Estável | Prusa MK4, XL, Mini+ (API REST local — tipo: prusalink) |
| Elegoo | Estável | Centauri Carbon (via LAN WebSocket/SDCP). Neptune 4 / OrangeStorm Giga usam Moonraker. |
| Duet / RepRapFirmware | Beta — ainda não verificado em hardware físico | Placas controladoras Duet 2 e Duet 3, pela mesma interface HTTP que o Duet Web Control usa. RepRapFirmware 2 e 3 são suportados. Vision Miner 22 IDEX v4 é a primeira máquina catalogada. Tipo: duet. |
| USB Direto | Estável | Qualquer impressora baseada em Marlin via USB (Ender 3, Prusa MK3, CR-10, etc.). Sem necessidade de OctoPrint ou Klipper — apenas um cabo USB. Tipo: serial. |
Kiln inclui perfis ajustados para 70 modelos de 15 marcas — Creality, Bambu Lab, QIDI, Elegoo, Prusa Research, Sovol, Voron, AON3D, Artillery, AnkerMake, FlashForge, INTAMSYS, RatRig, SparkX, Vision Miner. Veja a lista completa pesquisável →
Arquitetura
graph TD
A["🤖 AI Agent<br/><sub>Claude · GPT · Custom</sub>"]
A -->|"CLI or MCP"| B["⚙️ Kiln<br/><sub>CLI + MCP Server</sub>"]
B --> C["🖨️ Your Printers"]
B --> F["🏭 Fulfillment"]
B --> D["🛒 Marketplaces"]
B --> V["📐 Designs (versioned)<br/><sub>Pro+</sub>"]
C --> E1["OctoPrint"]
C --> E2["Moonraker"]
C --> E3["Creality"]
C --> E4["Bambu"]
C --> E5["Prusa Link"]
C --> E6["Elegoo"]
F --> F1["Craftcloud"]
D --> I["MyMiniFactory"]
D --> J["Cults3D"]
V --> V1["Branches"]
V --> V2["Signed Releases"]
V --> V3["Cloud Sync"]
style A fill:#1a1a2e,stroke:#e94560,color:#fff
style B fill:#16213e,stroke:#0f3460,color:#fff
style C fill:#0f3460,stroke:#e94560,color:#fff
style F fill:#0f3460,stroke:#27ae60,color:#fff
style D fill:#0f3460,stroke:#533483,color:#fff
style V fill:#0f3460,stroke:#f59e42,color:#fff
style E1 fill:#2d2d44,stroke:#e94560,color:#fff
style E2 fill:#2d2d44,stroke:#e94560,color:#fff
style E3 fill:#2d2d44,stroke:#e94560,color:#fff
style E4 fill:#2d2d44,stroke:#e94560,color:#fff
style E5 fill:#2d2d44,stroke:#e94560,color:#fff
style F1 fill:#2d2d44,stroke:#27ae60,color:#fff
style I fill:#2d2d44,stroke:#533483,color:#fff
style J fill:#2d2d44,stroke:#533483,color:#fff
style V1 fill:#2d2d44,stroke:#f59e42,color:#fff
style V2 fill:#2d2d44,stroke:#f59e42,color:#fff
style V3 fill:#2d2d44,stroke:#f59e42,color:#fff
Agentes também podem terceirizar trabalhos através do Craftcloud e pesquisar modelos no MyMiniFactory e Cults3D (somente pesquisa). No Pro e acima, a própria loja de design é versionada — branches, lançamentos assinados e sincronização em nuvem entre máquinas são resultados de primeira classe do sistema, não um banco de dados paralelo.
Git para 3D
Designs não são texto, mas precisam de controle de versão. Kiln trata malhas, decorações e recursos mecânicos como artefatos versionados de primeira classe: faça branch de um design, imprima variantes, mescle o que funciona, assine lançamentos com prova criptográfica de que a malha não mudou.
Três coisas tornam isso diferente de git:
- Branches correlacionados a resultados. Cada branch é marcado com resultados empíricos de impressão — taxa de sucesso, empenamento, adesão, custo — para que o A/B entre branches seja automático, não anedótico.
- Mesclagem semântica de malha em 3 vias. Conflitos são mostrados como diffs visuais da geometria, não patches de texto. Tolerância de fabricação, não deslocamentos de caracteres.
- Lançamentos assinados. Um lançamento é assinado criptograficamente e fixado à sua malha exata, para que qualquer pessoa possa verificar que a peça que tem em mãos é a peça que foi lançada.
Aqui está o que visualize_branch_tree("my-coaster") realmente emite — o mesmo renderizador que a oficina, a CLI e seu agente veem (amarelo = lançamento assinado, azul claro = experimento, vermelho claro = branch com resultados falhos):
flowchart TD
subgraph tree_coaster["📐 my-coaster · design"]
v0[v0: initial]
v1[v1: emboss-1mm<br/>83% success]
v2[v2: emboss-2mm<br/>92% success · warp 2%]
v3[v3: emboss-3mm<br/>warp 5%]
v4[v4: merge winner]
rel[🔏 1.0.0]
v0 --> v1
v0 --> v2
v0 --> v3
v2 --> v4
v4 --> rel
end
classDef root fill:#f3f4f6,stroke:#374151,color:#111
classDef released fill:#ffd60a,stroke:#111,stroke-width:3px,color:#111
classDef experiment fill:#e0e7ff,stroke:#6366f1,color:#1e1b4b
classDef failed fill:#fecaca,stroke:#b91c1c,color:#7f1d1d
class v0 root
class v1 experiment
class v2 experiment
class v3 failed
class v4 experiment
class rel released
style tree_coaster fill:#ffffff,stroke:#e5e7eb,stroke-width:1px
| Nível | O que você obtém |
|---|---|
| Grátis | Histórico de design linear local (salvar / diff / reverter) |
| Pro | Branch · merge · cherry-pick · lançamentos assinados Ed25519 · sincronização em nuvem solo |
| Business | Pull requests de equipe · portões de aprovação · organizações / equipes / escopos |
| Enterprise | Exportação de log de auditoria · SSO · autenticação reforçada em lançamentos · revisão de acesso |
Patente pendente em mesclagem semântica de malha, branching correlacionado a resultados e lançamento assinado com proveniência física.
Ferramentas
O servidor MCP Kiln (kiln serve) expõe 919 ferramentas para agentes, além de prompts e recursos para 926 capacidades MCP no total. Em vez de listar tudo aqui, agentes navegam pelo catálogo ao vivo com get_skill_manifest e descoberta estilo ToolSearch. Uma amostra representativa, na ordem em que uma impressão realmente acontece:
- design_session
- Converse com Kiln sobre o que você está criando e receba um design que corresponda ao que você pediu
- A porta de entrada para criar qualquer coisa: objetivo, geometria, pré-visualização, iterar. Grátis, ilimitado, em todos os níveis
- compile_scad
- Compile código OpenSCAD em um STL imprimível — o caminho sem chave por baixo de uma sessão de design
- Sem chave de API e sem serviço externo: o agente escreve a geometria, Kiln compila localmente
- generate_model
- Gere um modelo 3D a partir de um prompt de texto através de um provedor de IA externo
- Opcional e desligado, a menos que você traga sua própria chave (Meshy, Tripo3D, Stability, Gemini)
- search_all_models
- Pesquise marketplaces de modelos 3D conectados em uma única chamada
- Cobre MyMiniFactory e Cults3D; downloads onde o marketplace suporta
- import_step_file
- Importe um arquivo CAD STEP (.step/.stp) e converta para o pipeline de malha do Kiln
- analyze_printability
- Execute uma análise completa de imprimibilidade em uma malha: saliências, paredes finas, risco de empenamento, ajuste na mesa
- auto_orient_model
- Encontre a orientação de impressão que precisa de menos suporte e imprime com mais resistência
- repair_mesh
- Repare defeitos de malha — buracos, faces degeneradas, costuras de ruído de arredondamento
- A correção usual para um modelo produzido por um gerador de IA ou uma digitalização grosseira
- split_mesh_to_fit
- Corte um sólido grande demais para sua mesa de impressão em peças imprimíveis que se remontam
- recommend_material
- Recomende materiais para um caso de uso, com os motivos e as compensações
- decorate_surface
- Coloque qualquer imagem, texto, QR code ou padrão na superfície de um modelo como relevo ou rebaixo
- slice_model
- Fatie um modelo (STL/3MF/STEP) para G-code usando PrusaSlicer, OrcaSlicer ou BambuStudio
- show_on_stage
- Apresente um arquivo que você já tem — um modelo ou o arquivo fatiado prestes a imprimir — no palco 3D interativo do Kiln, sem refazer ou refatiar
- estimate_print_cost_from_mesh
- Estime custo de material, peso e tempo de impressão antes de comprometer a impressora
- preflight_check
- Execute verificações de segurança pré-impressão: estado da impressora, temperaturas, validade do arquivo, folga da mesa
- start_print
- Inicie uma impressão em uma máquina conectada
- monitor_print
- Status de impressão de uma única chamada: progresso, temperaturas, tempo restante, custo e um instantâneo da câmera quando a impressora tem uma
- emergency_stop
- Pare uma impressão em andamento imediatamente
- purge_filament
- Aqueça o bico e empurre um pequeno comprimento — o teste de entupimento, com
load_filamenteunload_filamentao lado para uma troca de carretel - Relata o que a impressora realmente pôde informar: onde uma máquina não relata sinal de fluxo, ela diz isso em vez de afirmar sucesso
- Sempre diz para onde o purga foi: pelo canal de purga da própria máquina onde Kiln o conhece para seu modelo (servido pelo serviço hospedado do Kiln para uma impressora pareada ao seu login Kiln, grátis e mantido na sua máquina para continuar funcionando offline), ou no lugar com o motivo — nunca uma coordenada adivinhada
- Aqueça o bico e empurre um pequeno comprimento — o teste de entupimento, com
- wipe_nozzle
- Limpe a ponta do bico na almofada de limpeza da própria impressora (servido pelo serviço hospedado do Kiln para uma impressora pareada ao seu login Kiln, grátis e mantido na sua máquina para continuar funcionando offline); recusa e diz o que usar em vez disso, em qualquer modelo cuja almofada o Kiln não conhece
- Execute em etapas quando a passada é nova para uma máquina:
plan_onlydescreve cada movimento e não envia nada;step=Nenvia um movimento, diz o que deixou armado e segura o resfriamento até a última etapa. Uma limpeza que pressiona ou cruza a mesa pedeplate_clearem cada chamada: a palavra de uma pessoa, nunca inferida. Onde a limpeza de um modelo ainda não foi executada em uma máquina real, Kiln diz isso e executa apenas em etapas
- home_axes
- O botão Home, do Kiln: a rotina de homing do seu próprio modelo onde Kiln a tem (servido pelo serviço hospedado do Kiln para uma impressora pareada ao seu login Kiln, grátis e mantido na sua máquina para continuar funcionando offline), a rotina do firmware em outros lugares, uma recusa que nomeia os controles de jog da tela onde nenhum é seguro
- Execute em etapas na primeira vez:
plan_onlydescreve cada movimento antes que qualquer coisa se mova;step=Nenvia um movimento e diz o que deixou armado
- park_head
- Mova a cabeça para o local próprio do modelo fora da mesa e deixe-a lá; nunca um toque em Z, nunca calor
- plate_status
- O que Kiln sabe que está na mesa de impressão: a impressão que deixou uma peça lá e há quanto tempo, ou que está limpa — a palavra de uma pessoa (
kiln plate clear, ouplate_clearem home e park) ou uma olhada pela câmera da impressora (look_at_plate); nada marca como limpo por conta própria - Home, park, fatiamento e início de impressão recusam cruzar uma peça registrada, e a recusa mostra a mesa pela câmera onde a impressora tem uma, para que um registro antigo seja verificado em vez de confiado
- O que Kiln sabe que está na mesa de impressão: a impressão que deixou uma peça lá e há quanto tempo, ou que está limpa — a palavra de uma pessoa (
- diagnose_print_failure_live
- Diagnostique uma impressão falhando a partir do estado ao vivo da impressora mais a geometria do próprio modelo
- retry_print_with_fix
- Diagnostique o que deu errado na última impressão, depois refatie e imprima com a correção aplicada
- resume_interrupted_print (Pro)
- Retome uma impressão interrompida com uma chamada em qualquer impressora FDM suportada
- save_design_version
- Salve uma nova versão de um design paramétrico, para que você possa voltar à que funcionou
- Histórico linear é grátis; branching, merges e lançamentos assinados são Pro
- export_step
- Exporte um design finalizado como um arquivo CAD STEP real — B-rep analítico que uma oficina pode abrir e medir
- fleet_status (Business)
- Status ao vivo de cada impressora em uma frota: estado, temperaturas, conexão
- fulfillment_quote
- Obtenha um orçamento de fabricação da rede do Craftcloud — imprima sem possuir uma impressora
Além desta amostra, o catálogo cobre orquestração de frota, previsão de falhas de impressão, controle de versão de design, manuais de montagem e calibração por máquina; os níveis mais profundos são descritos em kiln3d.com/pricing. O catálogo completo de ferramentas, agrupado por subsistema, está em Project Docs. Se você é o agente, kiln3d.com/agents cobre o mesmo terreno escrito na segunda pessoa, incluindo as recusas que vale a pena conhecer antes de encontrá-las.
Recursos MCP (contexto somente leitura para agentes)
| URI do recurso | Descrição |
|---|---|
kiln://status | Instantâneo do sistema (impressoras, fila, eventos) |
kiln://printers | Listagem da frota com impressoras ociosas |
kiln://printers/{name} | Status detalhado para uma impressora específica |
kiln://queue | Resumo da fila de trabalhos e trabalhos recentes |
kiln://queue/{job_id} | Detalhe para um trabalho específico |
kiln://events | Eventos recentes (últimos 50) |
Capacidades
Pesquisar → baixar → imprimir. Kiln pesquisa MyMiniFactory e Cults3D (somente pesquisa) em uma chamada via search_all_models, baixa onde suportado e envia direto para uma impressora — um ciclo completo de design para impressão sem humano no meio. (Thingiverse é suportado, mas descontinuado desde sua aquisição em fev/2026 pela MyMiniFactory; prefira MMF.) O acesso ao marketplace usa chaves de API gratuitas (KILN_MMF_API_KEY, KILN_CULTS3D_USERNAME + KILN_CULTS3D_API_KEY).
Geração de modelos por IA. Defina qualquer chave de provedor e ela estará disponível instantaneamente — KILN_MESHY_API_KEY, KILN_TRIPO3D_API_KEY, KILN_STABILITY_API_KEY, KILN_GEMINI_API_KEY — ou use OpenSCAD local sem chave. Malhas geradas são automaticamente validadas para imprimibilidade (manifold, contagem de triângulos, caixa delimitadora) antes da impressão. kiln generate renderiza uma pré-visualização de 3 vistas por padrão.
Fatiamento. Encapsula PrusaSlicer, OrcaSlicer e BambuStudio para fatiamento headless; detecta automaticamente fatiadores instalados no PATH, pacotes de aplicativos macOS ou via KILN_SLICER_PATH. Suporta STL, 3MF, STEP, OBJ, AMF com temperaturas conscientes de material e suportes inteligentes.
Fulfillment (sem impressora necessária). Imprima pela rede do Craftcloud — orçamento, validar endereço, confirmar, pedir, rastrear — ou execute junto com suas próprias impressoras para excesso e materiais especiais. Usuários normais passam pelo proxy hospedado (credenciais permanecem no servidor, limites de gastos aplicados); operadores podem usar modo direto com KILN_FULFILLMENT_PROVIDER=craftcloud + KILN_CRAFTCLOUD_API_KEY.
Decoração & texturas. Grave ou rebaixe códigos QR, fotos, logotipos, textos e SVGs em qualquer face do modelo, ou aplique texturas procedurais (listras de tigre, mármore, camuflagem, veios de madeira, colmeia) com uma única chamada de ferramenta.
Preços
Toda impressão local é gratuita para sempre — status, gerenciamento de arquivos, fatiamento, controle de frota e impressão em suas próprias impressoras não custam nada. A Kiln cobra uma taxa de orquestração de 5% em pedidos feitos por meio de serviços de fabricação externos (os 3 primeiros pedidos de cada mês civil são gratuitos, em todos os planos; mínimo de US$ 0,25 / máximo de US$ 200 por pedido), exibida de forma transparente em cada cotação. O volume de pedidos terceirizados não é limitado em nenhum plano.
| Plano | Preço | Destaque |
|---|---|---|
| Grátis | US$ 0 | Impressão local ilimitada, fatiamento, busca no marketplace, perfis de segurança, uma impressora, inteligência de design, histórico de design linear. |
| Pro | US$ 49/mês | Git-para-3D com ramificações/versões assinadas, modelos de produto, texturas procedurais, modificação durante a impressão, retomada de impressão, recuperação de falhas, rastreamento de desgaste do bico, sincronização em nuvem individual. |
| Business | US$ 199/mês | Uso comercial, 3 impressoras + 3 assentos, gerenciamento de frota, aprendizado entre impressoras, geração de QR, manuais de montagem, pull requests em equipe, portões de aprovação, webhooks. |
| Enterprise | Fale conosco | Frotas grandes, SSO/SCIM, RBAC, trilha de auditoria, G-code criptografado em repouso, manuais white-label, SLA de 99,9%, on-prem/VPC. |
Oferta de fundador: 50% de desconto vitalício enquanto durarem as vagas de fundador — Pro por US$ 24,50/mês ou US$ 234/ano, Business por US$ 99,50/mês ou US$ 954/ano. Estudantes têm 50% de desconto por 12 meses. Detalhes e como obter o preço de estudante: kiln3d.com/pricing.
Comparação completa em kiln3d.com/pricing. Já é assinante? Execute kiln signin para colocar esta máquina no seu plano. Para pedidos roteados por provedores, o provedor permanece como comerciante de registro; a Kiln atua como infraestrutura de orquestração.
Segurança
A Kiln é uma infraestrutura que prioriza a segurança para controlar máquinas físicas:
- Verificações pré-voo validam o estado da impressora, temperaturas e arquivos antes de cada impressão
- Validação de G-code bloqueia comandos perigosos (reset de firmware, temperaturas inseguras)
- Limites de temperatura impõem máximos seguros (300 °C no hotend, 130 °C na mesa)
- Uma pessoa dá o OK antes de cada impressão — na caixa de aprovação do seu aplicativo de IA, digitando um código que a Kiln mostra na tela, ou no terminal — a menos que você opte por não ser perguntado: por um tempo (no máximo um dia), sempre em uma impressora que você mesmo nomeou (no seu próprio terminal, ou na página da sua conta Kiln com verificação em duas etapas), ou ativando a impressão automática você mesmo; parar, pausar e observar uma impressão nunca exige esse sim
- Confirmação necessária para operações destrutivas (cancelar, G-code bruto)
- Autenticação opcional com chaves de API baseadas em escopo para configurações multiusuário
- Erros estruturados garantem que os agentes sempre saibam quando algo falha
Pacotes
Este monorepo contém dois pacotes:
| Pacote | Descrição | Ponto de entrada |
|---|---|---|
| kiln | CLI + servidor MCP para controle de múltiplas impressoras (OctoPrint, Moonraker, Creality, Bambu, Prusa Link, Elegoo, USB direto) | kiln ou python -m kiln |
| octoprint-cli | CLI autônomo leve para configurações somente OctoPrint | octoprint-cli |
Desenvolvimento
# Create a virtualenv first (required on modern Ubuntu/Debian/WSL)
python3 -m venv .venv && source .venv/bin/activate
pip install -e "./kiln[dev]"
pip install -e "./octoprint-cli[dev]"
cd kiln && python3 -m pytest tests/ -v
cd ../octoprint-cli && python3 -m pytest tests/ -v
Executar no Docker
docker compose up auto-hospeda o servidor MCP da Kiln contra sua própria impressora — defina KILN_PRINTER_TYPE/KILN_PRINTER_HOST/KILN_PRINTER_API_KEY primeiro. Este é um quickstart pessoal de auto-hospedagem, sem relação com a infraestrutura por trás do serviço hospedado api.kiln3d.com. Prefere zero configuração? kiln3d.com executa a versão hospedada para você.
Referência de configuração (autenticação, webhooks, descoberta, plugins)
Autenticação (opcional)
Autenticação opcional por chave de API para ferramentas MCP, desabilitada por padrão. Escopos: read, write, admin. Ferramentas somente leitura nunca exigem autenticação.
export KILN_AUTH_ENABLED=1
export KILN_AUTH_KEY=your_secret_key
export KILN_MCP_AUTH_TOKEN=your_secret_key # clients provide their key here
Webhooks
Registre endpoints HTTP para notificações de eventos em tempo real:
register_webhook(url="https://example.com/hook", events=["job.completed", "print.failed"])
Os payloads são assinados com HMAC-SHA256 quando um segredo é fornecido. Redirecionamentos são bloqueados por padrão (KILN_WEBHOOK_ALLOW_REDIRECTS=0); quando habilitados, cada salto é validado contra SSRF e o downgrade HTTPS→HTTP é bloqueado.
Descoberta de impressoras
kiln discover # mDNS/Bonjour + HTTP subnet probing
Encontra impressoras OctoPrint, Moonraker/Creality, Bambu, Elegoo e Prusa Link. Se a descoberta não retornar nada, registre diretamente pelo IP com kiln auth.
Plugins de terceiros
Plugins de entry-point são negados por padrão em produção (KILN_PLUGIN_POLICY=strict). Permita plugins específicos com KILN_ALLOWED_PLUGINS=my_plugin,other_plugin, ou defina KILN_PLUGIN_POLICY=permissive para compatibilidade temporária de migração.
Módulos (para contribuidores)
| Módulo | Descrição |
|---|---|
server.py | Servidor MCP com ferramentas, recursos e integração de subsistemas |
printers/ | Abstração de adaptador de impressora (OctoPrint, Moonraker, Creality, Bambu, Prusa Link, Elegoo) |
marketplaces/ | Adaptadores de marketplace de modelos (MyMiniFactory, Cults3D, Thingiverse, fontes somente metadados) |
slicer.py | Integração de fatiador (PrusaSlicer, OrcaSlicer, BambuStudio) com detecção automática |
registry.py | Registro de frota para gerenciamento de múltiplas impressoras |
queue.py | Fila de trabalhos prioritária com rastreamento de status |
scheduler.py | Despachante de trabalhos em segundo plano com roteamento inteligente baseado em histórico |
events.py | Barramento de eventos pub/sub com histórico |
persistence.py | Armazenamento SQLite para trabalhos, eventos e configurações |
webhooks.py | Entrega de webhooks orientada a eventos com assinatura HMAC |
auth.py | Autenticação opcional por chave de API com acesso baseado em escopo |
discovery.py | Descoberta de impressoras em rede (mDNS + sonda HTTP) |
generation/ | Provedores de geração texto-para-modelo (Meshy, Tripo3D, Stability AI, Gemini Deep Think, OpenSCAD) com autodescoberta, validação de malha e análise de imprimibilidade |
consumer.py | Fluxo de trabalho do consumidor para usuários não impressores (validação de endereço, recomendações de material, estimativa de prazo/preço, integração) |
cost_estimator.py | Estimativa de custo de impressão a partir da análise de G-code |
materials.py | Rastreamento de múltiplos materiais e carretéis |
material_catalog.py | Catálogo de marcas de materiais, propriedades e metadados de links de compra |
material_inventory.py | Inventário de materiais da frota e rastreamento de atribuição |
bed_leveling.py | Sistema de acionamento automático de nivelamento da mesa |
streaming.py | Proxy de streaming de webcam MJPEG |
cloud_sync.py | Sincronização em nuvem para configurações de impressora e histórico de trabalhos |
plugin_loader.py | Descoberta e registro internos de plugins de ferramentas |
plugins/ | Módulos de ferramentas MCP focados carregados pelo carregador de plugins |
gcode.py | Validador de segurança de G-code com limites por impressora |
gcode_interceptor.py | Interceptação de G-code baseada em regras e reescrita de segurança |
safety_profiles.py | Banco de dados de segurança integrado (51 modelos de impressora nomeados, temperaturas/velocidades de avanço/fluxo) |
slicer_profiles.py | Perfis de fatiador integrados (gera automaticamente arquivos .ini por impressora) |
printer_intelligence.py | Base de conhecimento da impressora (peculiaridades de firmware, materiais, modos de falha) |
pipelines.py | Pipelines de impressão pré-validados (quick_print, calibrate, benchmark) |
assembly.py | Validação de montagem multiparte e suporte a planejamento manual |
design_versions.py | Histórico de design local, registros de versão, diffs e primitivas de rollback |
mesh_validation_pipeline.py | Pipeline de validação de imprimibilidade com múltiplas portas |
model_visualizer.py | Renderização de pré-visualização de modelo local |
tool_schema.py | Conversor de esquema de chamada de função OpenAI (MCP → formato OpenAI) |
tool_tiers.py | Definições de níveis de ferramentas (essencial/padrão/completo) para correspondência de capacidade do modelo |
agent_loop.py | Loop de agente genérico para qualquer API compatível com OpenAI (OpenRouter, direto, etc.) |
openrouter.py | Integração OpenRouter com catálogo de modelos e detecção automática de nível |
data/ | Bancos de dados JSON integrados (perfis de segurança, perfis de fatiador, inteligência de impressora) |
heater_watchdog.py | Vigia de resfriamento automático para aquecedores ociosos |
wallets.py | Configuração de carteira cripto (Solana/Ethereum para doações e taxas) |
pro_tool_manifest.json | Manifesto público para descoberta de ferramentas kiln-pro e stubs de proxy REST |
decoration_quota.py | Rastreamento de cota de decoração do plano gratuito e hooks de resolução de nível |
cli/ | CLI Click com 245 comandos e saída JSON |
kiln-pro (kiln3d.com) estende a Kiln pública com REST de nível pago, cobrança, licenciamento, SSO, RBAC, criptografia de G-code, relatórios de uptime, administração de equipe e fluxos de trabalho de custo de projeto. A Kiln pública expõe apenas a superfície de interface/proxy para essas capacidades; a implementação privada permanece no kiln-pro.
Documentação
| Documento | Descrição |
|---|---|
| Project Docs | Referência completa (CLI, ferramentas MCP, adaptadores, configuração) |
Ativos de marca
Os arquivos de logotipo estão em docs/assets/ — todos em SVG vetorial, escaláveis para qualquer tamanho.
| Arquivo | Uso |
|---|---|
kiln-banner-1280x640.svg / kiln-banner-1280x640-light.svg | Banner do GitHub / mídia social (esquema escuro / claro) |
kiln-logo-dark.svg / kiln-logo-light.svg | Marca principal + logotipo (fundo escuro / claro) |
kiln-horizontal-dark.svg / kiln-horizontal-light.svg | Composição horizontal (fundo escuro / claro) |
kiln-logo-dark-notext.svg | Somente marca (fundo escuro) |
kiln-favicon-256.svg | Favicon / ícone de aplicativo |
kiln-logo-transparent.svg / kiln-logo-transparent-dark.svg | Fundo transparente (para UIs escuras / claras) |
kiln-mark-1024.svg | Quadrado da marca — foto de perfil, bloco de aplicativo (1024×1024) |
kiln-x-header-1500x500.svg | Cabeçalho social (1500×500) |
wallpapers/kiln-wallpaper-iphone-*.svg | Papéis de parede para iPhone |
wallpapers/kiln-wallpaper-macbook-*.svg | Papéis de parede para MacBook |
Cada arquivo acima é gerado a partir de uma única geometria, então a marca é idêntica em todos eles. Por favor, não a redesenhe — escale o vetor.
Apoie o Desenvolvimento
A Kiln é software livre e de código aberto. Se você a achar útil, considere enviar uma gorjeta:
- Solana:
kiln3d.sol - Ethereum:
kiln3d.eth
Posicionamento
Esclarecimento de mensagem (24 de fevereiro de 2026): Esclarecemos a redação para remover ambiguidade e alinhar com a intenção existente; nenhuma mudança de estratégia. A Kiln é infraestrutura de orquestração e agentes para fluxos de trabalho de fabricação. A Kiln não opera um marketplace/rede de manufatura descentralizada de primeira parte. A Kiln integra-se com provedores terceiros e adaptadores externos de provedores/redes conforme as integrações estiverem disponíveis.
Não-objetivos: operar um marketplace/rede de manufatura descentralizada de primeira parte; substituir redes de fornecimento de parceiros; possuir marketplaces de provedores em vez de integrar-se a eles; atuar como comerciante de registro para pedidos de manufatura roteados por provedores.
Licença
A Kiln é um projeto da Hadron Labs Inc.
Licença AGPL-3.0 — código aberto com copyleft. Licenciamento comercial disponível para empresas que precisam de uso proprietário.
Ao contribuir, você concorda com o Contrato de Licença de Contribuidor.
Também listada no Smithery.
Marcas registradas
OctoPrint é uma marca registrada. Outros nomes de produtos e empresas são marcas registradas de seus respectivos proprietários; a Kiln não é afiliada a eles nem endossada por eles.