SimplyPrint
Manage your SimplyPrint 3D printer farm. Monitor, queue, and control prints from AI.
List MULTIPLE printers with optional filters. For details on a single known printer, call get_printer instead — do not list-then-filter. For farm-wide counts ("how many printers are doing X"), call get_farm_overview instead — do not paginate this. Use status=["online"] to only see reachable printers, status=["printing"] for ones actively printing, status=["was_printing_when_offline"] for printers that dropped mid-print, status=["idle"] for available printers ready to accept a job, status=["awaiting_bed_clear"] for printers whose last print finished but the bed has not been cleared yet (NOT print_pending, which means a queued staggered start).
Get details, status, temps, current job, filament, notifications for ONE specific printer by id. Use this (not list_printers) whenever the user asks about a single printer they've already identified — "status of printer X", "what's printer 5 doing", "temperature on Creality K2". Cheaper and less noisy than listing all printers.
One-shot summary of farm-wide printer state. Use this (NOT list_printers) when the user asks "how many printers are printing/idle/awaiting bed clear/etc." or "what is the state of the farm". Returns a total and {count, printers:[{id,name}]} for each bucket: online, offline, not_connected, operational (idle), printing, paused, awaiting_bed_clear (a print finished but the bed has not been cleared yet — printer is online + operational + still has a job; this is NOT print_pending), in_maintenance, print_pending (a queued staggered/scheduled start), requires_attention (has unresolved error notifications), ai_running, ai_detected_low, ai_detected_high. Counts overlap intentionally: a printer can be in "online" + "printing" + "ai_running" at once.
Pause the current print on a printer
Resume a paused print on a printer
Cancel the current print on a printer
Send G-code commands to a printer
Start a print job on one or more printers. File source is exactly one of: file_id (API file hash from upload), filesystem (user-file uid), queue_file (existing queue item id), reprint (previous print-job id), or next_queue_item=true (auto-pick the next matching queue item per printer, deduplicated across printers). Supports PRINT_JOB custom fields (shared and per-printer). Auto-starts when the account's autostartPrints setting is on (default).
Home the printer axes (move to origin position)
Move a printer axis to a relative position
Control the printer cooling fans
Enable or disable the printer stepper motors
List print queue items with optional filters. Supports filtering by assigned printer(s), group, approval status, tags, queue-item custom-field values, and age. Example: older_than_days=7 for "items added more than 7 days ago", or custom_fields=[{id: "<uuid>", value: "Engineering"}] for a specific department field.
Get details of a specific queue item
Remove an item from the print queue
Queue a file for printing. Pick exactly one file source: fileId (hex hash from the files.simplyprint.io Upload endpoint) or filesystem (UserFile.uid of an existing library file). Supports PRINT_QUEUE custom fields.
Update a queue item (amount, note, custom print time, material usage, printer assignments).
Move a single queue item to a new 1-based position.
Move one or more queue items to a different queue group.
Bring a completed (done) queue item back to the active queue.
DESTRUCTIVE: Delete all items from the queue (optionally filtered by group or done-only). Confirm with the user before calling.
Show which queue items match/miss a specific printer and why. Useful for diagnosing why a queue item will not print.
Calculate the estimated cost of a queue item, optionally for a specific printer.
Find the best-matching queue item(s) for a set of printers using SimplyPrint's compatibility matcher.
Read-only preview: for each given printer, return the next queue item that would be started. Uses the same dedup matcher as create_print_job with next_queue_item=true, so the same queue item is never returned twice across printers in one call. Includes match failures per printer (issues) so you can explain why a printer has nothing to print. Does NOT start any job.
List all queue groups in the user's account.
Create a new queue group or update an existing one.
Delete a queue group. Optionally move its items to another group via move_to.
Move a queue group to a new position.
List queue items pending approval (status: PENDING, DENIED, or REVISION).
Approve one or more pending/revision/denied queue items, with optional comment.
Deny a pending queue item, either removing it or requesting revisions. Include a comment explaining the decision.
Revoke approval on an already-approved item and send it back to the submitter for revisions.
Resubmit a denied or revision-requested queue item back to pending approval. File-replacement is not supported via MCP.
Retrieve all approval comments on a queue item or user file.
Add a comment (general or feedback) to a queue item or user file. File attachments are not supported via MCP.
Edit an approval comment you authored.
Delete an approval comment you authored (or any comment if you have the permission).
List custom field definitions with pagination and search.
List custom field definitions for a specific entity category and optional sub-category (e.g. PRINT + PRINT_QUEUE for queue-item custom fields).
Set custom field values on one or more entities (queue items, files, printers, etc.). Use this to set a "deadline" or similar field across many queue items at once.
List files and folders in the user's SimplyPrint storage. With pid set, only returns files compatible with that printer (full compatibility check). With global_search=true (default), searches recursively across all folders.
Get a folder's details including permissions.
Estimate the print cost of a file, optionally for a specific printer.
Find which printer models in the account are compatible with a given file.
Set the printers/models/groups a file is assigned to.
Update file metadata such as name and GCODE analysis.
Create a new folder (or edit an existing one with optional org-level permissions).
Delete one or more folders.
Move one or more files to a folder.
| Timestamp | Status | Latency | Conformance |
|---|---|---|---|
| Apr 28, 2026 | success | 250.1ms | Pass |
| Apr 28, 2026 | success | 601.6ms | Pass |
| Apr 27, 2026 | success | 193ms | Pass |