Skip to main content

Workshop Tools

Module-gated

These tools are only advertised when the supplier has the Rentals module enabled. See Per-supplier tool filtering.

View items currently in the workshop for maintenance or repair, get job details, look up barcodes, manage checklists, and assign staff.

Required scope: products:read for read operations, products:write for mutations.

Tools Overviewโ€‹

ToolDescriptionRead-only?
get_workshop_itemsList items currently in the workshopYes
get_workshop_detailGet full details of a workshop itemYes
lookup_barcodeLook up what a barcode belongs toYes
get_checklist_templatesList available checklist templatesYes
get_checklist_template_detailGet a template with its itemsYes
get_workshop_checklistsList checklists on a workshop jobYes
complete_checklist_itemMark a checklist item as completeNo
uncomplete_checklist_itemReset a checklist item to incompleteNo
attach_checklist_to_workshopAttach a checklist template to a jobNo
remove_checklist_from_workshopRemove a checklist from a jobNo
create_checklist_templateCreate a custom checklist templateNo
assign_staff_to_workshopAssign staff to a workshop jobNo
unassign_staff_from_workshopRemove staff from a workshop jobNo

get_workshop_itemsโ€‹

List items currently in the workshop (maintenance, repair, etc.). Response includes checklist progress and assigned staff for each item.

Parametersโ€‹

NameTypeRequiredDescription
statusstringNoFilter by status: inWorkshop, scheduled, overdue, completed. Default: in workshop + scheduled.
searchstringNoSearch by product name or inventory identifier

Response Fieldsโ€‹

Each item includes: workshop_log_id, product_name, inventory_identifier, status, reason, checked_in_at, scheduled_start, scheduled_end, checklist_progress (e.g. "3/5"), has_critical_failures, assigned_staff (array of names).


get_workshop_detailโ€‹

Get full details of a specific workshop item by workshop log ID. Includes job details, timeline, overdue status, notes, checklists with full item details, and assigned staff.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID

Response Fieldsโ€‹

Includes all fields from get_workshop_items plus: variation, quantity, date_added, expected_completion, date_removed, duration_in_workshop, overdue, auto_complete, notes, checklists (array with full item details), assigned_staff (array with user_id, name, email).


lookup_barcodeโ€‹

Look up what a barcode belongs to (product or inventory item).

Parametersโ€‹

NameTypeRequiredDescription
barcode_valuestringYesThe barcode value to look up

get_checklist_templatesโ€‹

List available checklist templates for workshop inspections and maintenance procedures. Returns both prebuilt (system) and custom (supplier-created) templates.

Parametersโ€‹

NameTypeRequiredDescription
searchstringNoSearch templates by name
categorystringNoFilter by equipment category
typestringNoFilter by type: prebuilt or custom

get_checklist_template_detailโ€‹

Get full details of a checklist template including all its items with types and criticality.

Parametersโ€‹

NameTypeRequiredDescription
template_idintegerYesThe checklist template ID

get_workshop_checklistsโ€‹

List all checklists attached to a workshop job, including item completion progress, status, and critical failure detection.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID

complete_checklist_itemโ€‹

Mark a checklist item as complete, optionally providing a value and notes.

Parametersโ€‹

NameTypeRequiredDescription
item_idintegerYesThe checklist item ID to complete
valuestringNoValue for the item. For checkbox: "1". For pass/fail: "pass" or "fail". For text/numeric: the value.
notesstringNoAdditional notes for this checklist item

Item Type Valuesโ€‹

TypeExpected Value
checkboxAuto-set to "1", no value needed
pass_fail"pass" or "fail"
textFree-form text
numericNumeric string
photoOptional caption (photo upload not available via MCP)

uncomplete_checklist_itemโ€‹

Reset a completed checklist item back to incomplete. Clears the value, notes, and completion timestamp.

Parametersโ€‹

NameTypeRequiredDescription
item_idintegerYesThe checklist item ID to reset

attach_checklist_to_workshopโ€‹

Attach a checklist template to a workshop job. Creates a new checklist instance with all items from the template. A template can only be attached once per job.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID to attach the checklist to
template_idintegerYesThe checklist template ID to attach

remove_checklist_from_workshopโ€‹

Remove a checklist from a workshop job. Also deletes any uploaded photos for the checklist items.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID
checklist_idintegerYesThe checklist ID to remove

create_checklist_templateโ€‹

Create a custom checklist template with items for workshop inspections and maintenance. The template will be available to the supplier for attaching to future workshop jobs.

Parametersโ€‹

NameTypeRequiredDescription
namestringYesTemplate name
descriptionstringNoDescription of the template
equipment_categorystringNoEquipment category (e.g. "Bikes", "Kayaks")
itemsarrayYesArray of checklist items (see below)

Item Objectโ€‹

NameTypeRequiredDescription
labelstringYesItem label/question
descriptionstringNoDetailed description
typestringNoItem type: checkbox (default), pass_fail, text, numeric, photo
is_criticalbooleanNoWhether failure of this item flags a critical issue

assign_staff_to_workshopโ€‹

Assign one or more staff members to a workshop job. Staff must belong to the same supplier. Already-assigned staff members are skipped without error.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID
staff_idsarray of integersOne list requiredStaff IDs to assign, including staff without logins
user_idsarray of integersOne list requiredLegacy login user IDs to assign

Provide exactly one of staff_ids or user_ids. Every selected person must belong to this shop; a foreign ID rejects the whole selection.


unassign_staff_from_workshopโ€‹

Remove a staff member from a workshop job.

Parametersโ€‹

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop log ID
staff_idintegerOne ID requiredStaff ID to remove, including staff without logins
user_idintegerOne ID requiredLegacy login user ID to remove

Provide exactly one of staff_id or user_id. A staff record and its linked login count as one person; removing either removes both assignments on the job.


update_workshop_jobโ€‹

Edit an open job's reason or due date. Completed jobs cannot be edited. The caller needs workshop permission in the same shop, or an API key with products:write.

NameTypeRequiredDescription
workshop_log_idintegerYesThe workshop job ID
reasonstring or nullNomaintenance, repair, cleaning, other, or returned_damaged; null clears it
due_datestring or nullNoDue date in the shop's own time: YYYY-MM-DD (due by the end of that day) or YYYY-MM-DD HH:MM; null clears it

Omit a field to keep its saved value. A due date must follow a scheduled start.