list_printers
List printers
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).
輸入參數pagetagslimitsearchstatuscompactsort_bysort_idgroup_idorder_bysort_dirpage_size另有 4 個
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.
輸入參數compactprinter_id必填
get_farm_overview
Get farm overview
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
輸入參數printer_id必填
Resume a paused print on a printer
輸入參數printer_id必填
Cancel the current print on a printer
輸入參數reasoncommentprinter_id必填custom_positionreturn_positionreturn_to_queue
Send G-code commands to a printer
輸入參數gcodemacroprinter_id必填snippet_idmacro_context
create_print_job
Create print job
Start a print job on one or more printers, now or at a chosen time. 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). Pass schedule_for to hold the print until a specific time instead ("print this tonight at 10pm", "start it tomorrow morning").
輸入參數file_idmms_mapreprintfilesystemprinter_id必填queue_fileschedule_forcustom_fieldsstart_optionsnext_queue_itemindividual_custom_fields
list_scheduled_prints
List scheduled prints
List every print across the account that is waiting for a scheduled start time, soonest first. Use this for "what is scheduled tonight", "do I have anything queued up for tomorrow", or before rescheduling/cancelling so you can name the right printer. Returns printer, filename, scheduled_for and who scheduled it. Prints already released and starting are NOT listed here - use get_farm_overview for those.
輸入參數page必填page_size必填printer_ids
reschedule_print
Reschedule print
Change when a scheduled print starts, or release it immediately. Pass schedule_for with a new absolute instant to move it; omit schedule_for (or send null) to start the print now. Only affects prints still waiting on a scheduled time - a print already staggered or downloading cannot be pushed back.
輸入參數printer_id必填schedule_forexpected_job_uid
cancel_scheduled_print
Cancel scheduled print
Cancel a print that has not started yet - either waiting for its scheduled time or waiting in a staggered start queue - and free the printer. This does NOT cancel a print that is already running; use cancel_print for that.
輸入參數printer_id必填expected_job_uid
Home the printer axes (move to origin position)
輸入參數axesprinter_id必填snippet_id
move_printer_axis
Move printer axis
Move a printer axis to a relative position
輸入參數speeddistance必填direction必填printer_id必填snippet_id
set_printer_fans
Set printer fans
Control the printer cooling fans
輸入參數speed必填printer_id必填snippet_id
set_printer_motors
Set printer motors
Enable or disable the printer stepper motors
輸入參數enabled必填printer_id必填snippet_id
set_printer_temperatures
Set printer temperatures
Set target temperatures (nozzle, bed and/or chamber) on one or more printers - works while idle and mid-print. Values above the printer model maximum are clamped; 0 turns a heater off.
輸入參數bedtoolchamberprinter_id必填tool_index
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.
輸入參數pagetagsgroupsearchcompactsort_bysort_dirpage_sizeprinter_idadded_afteradded_beforecustom_fields另有 3 個
get_queue_item
Get queue item
Get details of a specific queue item
輸入參數item_id必填
remove_from_queue
Remove from queue
Remove an item from the print queue
輸入參數jobjobs
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 and a tags object for material colour, nozzle, build plate, or custom tags (for example tags={"material":[{"color":"Red","hex":"#FF0000","nozzle":0,"ext":0}]}).
輸入參數notetagsgroupamountfileIdpositionfilesystemfor_groupsfor_modelsfor_printerscustom_fields
update_queue_item
Update queue item
Update a queue item (amount, note, custom print time, material usage, printer assignments).
輸入參數notetimeamountpausedprinteddeadlineinfiniteprioritylog_printfor_groupsfor_modelspersistent另有 4 個
reorder_queue_item
Reorder queue item
Move a single queue item to a new 1-based position.
輸入參數to必填fromqueue_item_id必填
move_queue_item
Move queue item
Move one or more queue items to a different queue group.
輸入參數jobs必填target_group_id必填
revive_queue_item
Revive queue item
Bring a completed (done) queue item back to the active queue.
輸入參數groupamountpositionpriorityqueue_item_id必填position_index
DESTRUCTIVE: Delete all items from the queue (optionally filtered by group or done-only). Confirm with the user before calling.
輸入參數groupdone_items
inspect_printer_queue
Inspect printer queue
Show which queue items match/miss a specific printer and why. Useful for diagnosing why a queue item will not print.
輸入參數modecriteriaprinter_id必填
get_queue_item_cost
Get queue item cost
Calculate the estimated cost of a queue item, optionally for a specific printer.
輸入參數item_idmms_mapprinter_idqueue_item_id必填
get_next_queue_item
Get next queue item
Find the best-matching queue item(s) for a set of printers using SimplyPrint's compatibility matcher.
輸入參數compactfilterssortingsettingsdeselectsnormalOnlyprinter_id必填mustClearBedqueueGroupsOrderskippedQueueItemsincludeTodoSummaryspecificQueueGroups
get_next_queue_items_for_printers
Get next queue items for printers
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.
輸入參數compactprinter_id必填
list_queue_groups
List queue groups
List all queue groups in the user's account.
輸入參數item_id
save_queue_group
Save queue group
Create a new queue group or update an existing one.
無需輸入參數。
delete_queue_group
Delete queue group
Delete a queue group. Optionally move its items to another group via move_to.
輸入參數item_id必填move_to
reorder_queue_group
Reorder queue group
Move a queue group to a new position.
輸入參數to必填group_id必填
list_pending_queue_items
List pending queue items
List queue items pending approval (status: PENDING, DENIED, or REVISION).
輸入參數pagestatusper_page
approve_queue_item
Approve queue item
Approve one or more pending/revision/denied queue items, with optional comment.
輸入參數jobjobscomment
deny_queue_item
Deny queue item
Deny a pending queue item, either removing it or requesting revisions. Include a comment explaining the decision.
輸入參數jobjobsremovecomment
send_back_for_revision
Send back for revision
Revoke approval on an already-approved item and send it back to the submitter for revisions.
輸入參數commentqueue_item_id必填
resubmit_queue_item
Resubmit queue item
Resubmit a denied or revision-requested queue item back to pending approval. File-replacement is not supported via MCP.
輸入參數commentqueue_item_id必填
list_custom_fields
List custom fields
List custom field definitions with pagination and search.
輸入參數page必填searchsort_idend_datesort_dirpage_size必填start_date
list_custom_fields_for
List custom fields for
List custom field definitions for a specific entity category and optional sub-category (e.g. PRINT + PRINT_QUEUE for queue-item custom fields).
輸入參數category必填subCategoryincludeDisabled
set_custom_field_values
Set custom field values
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.
輸入參數values必填category必填entityIds必填subCategory
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.
輸入參數flimitstartcursorsearchcompactsort_bysort_dirhas_gcodenest_intoprinter_idglobal_search
Get a folder's details including permissions.
輸入參數item_id必填
estimate_file_cost
Estimate file cost
Estimate the print cost of a file, optionally for a specific printer.
輸入參數item_idmms_mapnewFileanalysisprinter_id
match_file_to_printers
Match file to printers
Find which printer models in the account are compatible with a given file.
輸入參數model必填gcodeAnalysis
set_file_printers
Set file printers
Set the printers/models/groups a file is assigned to.
輸入參數items必填groupsmodelsprinters
Update file metadata such as name and GCODE analysis.
輸入參數nameitem_id必填analysisprintersprinter_groupsprinter_modelsremove_thumbnail
Assign or remove routing tags on a file, including material colour. Use file_id (the UserFile.uid from list_files) and material=[{color, hex, nozzle, ext}] for a colour tag. This tool targets files only (type defaults to 3).
輸入參數type必填customeditednozzletag_idbedTypefile_idtag_idsfile_idsmaterialoverridenozzleData另有 1 個
create_folder
Create folder
Create a new folder (or edit an existing one with optional org-level permissions).
輸入參數orgname必填item_idorg_permsparent_folder必填
delete_folder
Delete folder
Delete one or more folders.
輸入參數folder必填
Move one or more files to a folder.
輸入參數files必填folder必填all_or_nothing
Move a folder to another location.
輸入參數folder必填target必填
Delete one or more files.
輸入參數file必填
get_slicer_settings_for_file
Get slicer settings for file
Retrieve slicer settings stored for a file.
輸入參數file必填
list_filaments
List filaments
List filament spools with optional filters and sorting. Accounts often have hundreds of spools, so ALWAYS pair sort_by with a limit. Use sort_by=last_used + limit=10 for "most used / most popular spool" questions. Use sort_by=created + limit=N for recently added. Use sort_by=left for emptiest/fullest. Filters (material_type/brand/color) are case-insensitive substring matches. If the user names a specific spool by id or 4-character short id (e.g. "T2SO"), call get_filament instead — do NOT list and grep. Amount-remaining fields: report weight from leftGrams/totalGrams (grams) and percentLeft (%), NOT the raw total/left which are internal filament LENGTH in mm. density (g/cm³) is the value used for the gram conversion; densityIsEstimated=true means the spool has no material profile so a default density was assumed.
輸入參數brandcoloremptylimitcompactsort_byassignedsort_dirprinter_idmaterial_type
Get details of one specific filament spool. Use this (NOT list_filaments+grep) when the user names a spool by id or short id. Accepts spool_id (the integer DB id) or spool_short_id (the 4-character code shown on QR labels and the spool view page, e.g. "T2SO", "M0WT").
輸入參數publicspool_idcompany_idlocationscountspool_short_id
adjust_filament_weight
Adjust filament weight
Adjust the remaining weight of a filament spool (e.g. after manual weighing).
輸入參數log_printfilament_id必填percent_leftweighed_grossgrams_remainingempty_spool_weightlog_print_filenamelog_print_printer_idsubtract_empty_spoolsave_empty_spool_weight
assign_filament
Assign filament
Assign a filament spool to a printer (or a specific extruder slot).
輸入參數sourceextruderprinter_id必填filament_id必填
unassign_filament
Unassign filament
Remove a filament spool from its printer assignment.
輸入參數sourcefilament_id必填location_id
get_filament_history
Get filament history
Retrieve the usage history of a filament spool.
輸入參數pagepublicitem_idperPageuser_id
mark_filament_dried
Mark filament dried
Mark a filament spool as freshly dried (resets humidity tracking).
輸入參數dried_atfilament_id必填
list_filament_colors
List filament colors
List available filament colors (for UI pickers or picking similar spools).
無需輸入參數。
list_brand_filaments
List brand filaments
List filament products from a specific brand.
輸入參數item_id必填
list_print_jobs
List print jobs
List past print jobs with pagination, filters, and sort. Compact mode (default) drops gcodeAnalysis, filament breakdowns, and panel-only flags.
輸入參數page必填limitsearchcompactsort_bysort_idsourcesend_datesort_dirspool_iduser_idspage_size必填另有 8 個
get_print_job
Get print job
Get detailed info for a specific print job.
輸入參數extraitem_id必填getcustomfields
archive_print_job
Archive print job
Archive a print job (hide from default history listings).
輸入參數jobs必填reason
unarchive_print_job
Unarchive print job
Restore an archived print job.
輸入參數jobs必填
get_account_statistics
Get account statistics
Account-level print statistics (success rate, filament used, print time, cost) with optional date range and user/printer filters.
輸入參數usersgeneralend_dateprintersfake_datastart_dateprinter_models
get_referral_stats
Get referral stats
Referral program statistics: conversions, earnings, pending payout.
無需輸入參數。
get_maintenance_dashboard
Get maintenance dashboard
Whole-account maintenance overview in one call: counts (in maintenance, scheduled, overdue, open problems, low/out of stock), the single next due job, the 10 most recent jobs, per-printer status and the active maintenance plans. Good for "how is the farm doing"; use list_maintenance_jobs for anything that needs filtering, paging or more than the 10 most recent jobs. Note low_stock_parts is silently [] when the account lacks the Maintenance Inventory feature — list_spare_parts says so explicitly instead.
無需輸入參數。
list_maintenance_jobs
List maintenance jobs
List maintenance jobs across the account with filters, paging and sorting — the tool for "what maintenance is outstanding, and on which printer". Each job carries its printer, priority, scheduled date, task progress, assignees and linked problems. Returns 10 per page by default; raise page_size (max 100) or advance page. IMPORTANT: a returned job status may read "overdue", but that value is DERIVED (a scheduled job whose scheduled_date has passed) and is NOT accepted by the status filter — ask for status "scheduled" and read each job's returned status, or use the dashboard's overdue count.
輸入參數pagedatedsearchstatussort_idsort_dirpage_sizeprinter_idprinter_ids
get_printer_maintenance_profile
Get printer maintenance profile
Everything known about one printer's maintenance: current status, health (last maintenance, days since, open problem count, active job), lifetime print and maintenance stats, the last 50 jobs, per-task completion history and spare parts consumed. The only source of a PREDICTED next-due date — when nothing is scheduled yet, health.next_scheduled_job is filled from the matching maintenance plan and carries is_predicted=true with a null id. Large response: ask for one printer at a time, and use get_maintenance_status_map for fleet-wide questions.
輸入參數printer_id必填include_active_job_detail
list_maintenance_problems
List maintenance problems
List reported printer problems with their description, problem type, reporter, status and age — get_maintenance_dashboard returns only an open-problem count, none of this. Returns 10 per page by default; raise page_size (max 100) or advance page.
輸入參數pagesearchstatussort_idsort_dirpage_sizeprinter_idproblem_type_id
get_maintenance_job
Get maintenance job
Full detail for one maintenance job: the task checklist with per-task completion, assignee and spare-part requirement, the printer's stats since its last maintenance, the problems linked to the job, and other unresolved problems on the same printer. Task checklists and spare-part requirements are available nowhere else over MCP. Pass the job id as job_id (list_maintenance_jobs returns it as "id"); each task's id is what the task tools take as task_id.
輸入參數job_id必填
list_spare_parts
List spare parts
List maintenance spare parts with stock level, low-stock threshold, SKU, category, cost and the printer models each part fits. Requires the Maintenance Inventory plan feature: without it this tool fails with an explicit "your account doesn't have access to this feature" error, so an empty list here always means the account genuinely has no matching parts. (get_maintenance_dashboard cannot tell you that — its low_stock_parts is silently [] both when the feature is missing and when stock is healthy.)
輸入參數pagesearchsort_idcategorysort_dirpage_sizestock_statusprinter_brandprinter_model_ids
get_maintenance_status_map
Get maintenance status map
Cheapest fleet-wide maintenance check; takes no parameters. Returns an object keyed by printer id, each entry holding status (in_maintenance, due, scheduled, or operational when only problems are open), next_scheduled_date and open_problems (the number of reported problems not yet resolved). Only printers with a scheduled or in-progress job or an open problem appear, so a printer that is absent has nothing outstanding and an empty object means nothing is scheduled or reported anywhere. Follow up with get_printer_maintenance_profile for one printer, or list_maintenance_jobs for job-level detail.
無需輸入參數。
get_partner_maintenance_overview
Get partner maintenance overview
For a partner, reseller, OEM or Enterprise group account: maintenance across every account it services. Returns counters (in maintenance, scheduled, overdue, open problems, open alerts, out of order, accounts needing a visit), one row per serviced account (printers, open problems, overdue jobs, next scheduled job, next visit, agreement), the most recent open problems, and the accounts due a visit. Fails on an account that is not a partner with the maintenance module.
輸入參數problemsproblem_limit
list_partner_maintenance_alerts
List partner maintenance alerts
For a partner account: its maintenance "needs attention" inbox - alerts its escalation rules opened for serviced accounts (problem thresholds, printers out of order too long, overdue jobs, visits due). Open alerts by default; status can be acknowledged, resolved, unresolved or all. Each alert has a human-readable message.
輸入參數limitstatuscompany_id
list_partner_maintenance_visits
List partner maintenance visits
For a partner account: its maintenance visits to serviced accounts. Open visits (proposed, confirmed, in progress) by default, soonest first; filter by status, company_id or a from/to date range.
輸入參數tofromlimitstatuscompany_id
list_accounts_due_maintenance_visit
List accounts due maintenance visit
For a partner account: serviced accounts due a maintenance visit under their agreed visits per year, soonest first, with visits used this year, the next booked visit, and whether it is overdue. Suggestions only; nothing is booked.
無需輸入參數。
start_maintenance_job
Start maintenance job
Move a scheduled maintenance job to in-progress, putting the printer into maintenance mode so AutoPrint stops sending it work. Only works on a job in "scheduled" status. This is the safe direction: it takes a printer OUT of rotation.
輸入參數job_id必填
complete_maintenance_task
Complete maintenance task
Tick one task off a maintenance job. Does NOT complete the job or return the printer to the AutoPrint rotation - use complete_maintenance_job for that once every task is done. If the task is tied to a spare-part category you must pass selected_spare_part_id, or skip_spare_part true; completing it decrements that part's stock.
輸入參數task_id必填custom_fieldsskip_spare_partselected_spare_part_id
uncomplete_maintenance_task
Uncomplete maintenance task
Reopen a task that was ticked off by mistake. The undo for complete_maintenance_task.
輸入參數task_id必填
skip_maintenance_task
Skip maintenance task
Mark a task as skipped rather than done - it was not needed this time. Reversible with unskip_maintenance_task.
輸入參數task_id必填
unskip_maintenance_task
Unskip maintenance task
Undo a skip, putting the task back on the job as outstanding.
輸入參數task_id必填
assign_maintenance_task
Assign maintenance task
Assign a maintenance task to a user, or pass no user_id to unassign it. Set notify true to tell them.
輸入參數notifytask_id必填user_id
complete_maintenance_job
Complete maintenance job
Close a maintenance job as done. This RETURNS THE PRINTER TO THE AUTOPRINT ROTATION, so only call it when the work has actually been carried out - confirm with the user first. Optionally pass completion_summary, and resolve_problem_ids to close the problems this job fixed.
輸入參數job_id必填completion_summaryresolve_problem_idsskip_resolve_linked
cancel_maintenance_job
Cancel maintenance job
Cancel a maintenance job that is not going to happen. If it was in progress this also returns the printer to the AutoPrint rotation. Not the same as completing it: no work is recorded and schedule counters are not reset.
輸入參數job_id必填
get_webhook_sample
Get webhook sample
Get one or more realistic sample webhook payloads for a specific event type, matching the envelope a live webhook delivery would produce. Used by integration platforms (Activepieces, n8n, Zapier) to show the payload shape before any real event fires. Falls back to synthetic data when no applicable entity exists in the account.
輸入參數event必填limitversion