io.github.CSOAI-ORG/qidi-printer-mcp
QIDI 3D Printer MCP server. Controls QIDI 4 Max Combo via Moonraker REST API. Tools: printer...
Versions
1.0.1latest1.0.4Tools 12
printer_status Full printer status: state, bed/nozzle temps, and current print info. READ-ONLY · idempotent · no side effects.
get_temperatures Current bed and nozzle temperatures with targets. READ-ONLY · idempotent · no side effects.
list_files List all gcode files uploaded to the printer. READ-ONLY · idempotent · no side effects.
print_progress Current print progress: % complete, elapsed, estimated remaining, filename. READ-ONLY · idempotent · no side effects.
box_humidity QIDI Box filament-dryer humidity, temperature, and drying state (AHT20 sensor). READ-ONLY · idempotent · no side effects. Use before a moisture-sensitive print (nylon / PA-CF / PETG) to confirm the filament is dry. Returns: humidity_pct (% RH), box_temp_c, drying_active (bool), printer_ip.
humidity_gate Pre-print humidity gate — call BEFORE starting a moisture-sensitive print. READ-ONLY / advisory: reads Box humidity and returns a GO / NO-GO verdict so a wet-filament print can't start by accident. It does NOT stop the printer itself — only call start_print when safe_to_print is True. Fail-safe: returns NO-GO/UNKNOWN if the Box can't be read (a network blip can't green-light a wet print). Args: max_humidity: max safe % RH (default 20.0; nylon / PA-CF want < 20%). material: filament name, for the advice string. Returns: safe_to_print (bool), humidity_pct, threshold, verdict, advice.
start_print Start printing a gcode file already uploaded to the printer. ⚠️ MUTATING — starts a physical print. Real-world side effects, NOT idempotent, NOT read-only. For moisture-sensitive filament, call humidity_gate first and only proceed if safe_to_print is True. Args: filename: name of the gcode file on the printer (e.g. 'benchy.gcode').
pause_print Pause the current print job. ⚠️ MUTATING — changes printer state. NOT read-only, NOT idempotent.
resume_print Resume a paused print job. ⚠️ MUTATING — changes printer state. NOT read-only, NOT idempotent.
cancel_print Cancel the current print job (printer stops and cools down). ⚠️ MUTATING & DESTRUCTIVE — aborts the running print, losing progress. NOT read-only, NOT idempotent. Only call with clear intent.
send_gcode Send a raw G-code command to the printer. ⚠️ MUTATING & potentially DESTRUCTIVE — moves the head, sets temps, drives motors. NOT read-only, NOT idempotent. Validate commands before sending. Common: G28 home · G1 X100 Y100 Z50 F3000 move · M104 S200 nozzle · M140 S60 bed · M106 S255 fan on · M107 fan off. Args: command: the G-code command string.
preheat Preheat bed and nozzle to target temperatures (defaults PLA-friendly: bed 60C, nozzle 220C). ⚠️ MUTATING — turns on heaters. NOT read-only, NOT idempotent. Args: bed_temp: target bed C (0-120, default 60). nozzle_temp: target nozzle C (0-300, default 220).
Permissions 3
network medium filesystem low env_vars low