Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

5 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

printd

printd

A self-hosted print daemon. Send it a model, it slices with your profiles, enforces your rules, shows you a preview, prints on your go, and watches the print with snapshot notifications. Drive it from any MCP client (Claude, agents, your own tools) or the bundled CLI.

Why

Printing through a chat agent usually means a long chain of manual steps executed differently every time. printd makes the pipeline deterministic: the agent makes decisions, the daemon does the work, and a print is three calls: submit, slice, start.

How it works

submit (file or model URL)
  -> slice (your slicer, your profiles)
  -> gates (your rules: no brim, placement, bounds, ...)
  -> preview image -> human approval (overridable)
  -> start (preheat, print)
  -> watcher (snapshots, milestones, stall detection, notifications)

The engine ships empty

Everything opinionated is a swappable part configured in one YAML file:

Seam Ships with
Printer drivers OctoPrint
Slicer adapters OrcaSlicer CLI
Gates brim/skirt policy, placement zone, bounds check, preview approval
G-code transforms fresh-mesh probe preamble, Marlin start-gcode patches
Notifiers Home Assistant

If a behavior can't be expressed as config on one of these seams, it doesn't belong in core.

Quickstart

pip install printd
printd-server --config config.yaml   # MCP server (HTTP) + watcher
printctl status                      # same operations from the shell

See example-config.yaml for a full config.

License

MIT

About

Self-hosted print daemon: slice, gate, preview, print, and watch 3D prints from any MCP client

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages