Equipment
BlueSuite MCP tools for equipment
See connection and authentication and workflow rules before calling these tools.
Related REST API and behavior.
List the company's own equipment, vehicles, trailers, tools and machines the business owns. This is NOT equipment installed at a customer's property.
| Field | Type / accepted values | Required | Details |
|---|
status | array of "active", "in_repair", "retired", "sold" | No | Filter by status: active, in_repair, retired, sold. |
search | string | No | Search by name, make, model or serial number. |
page | integer | No | Page number (default: 1) |
per_page | integer | No | Results per page minimum: 1. maximum: 100. |
| Field | Type / accepted values | Required | Details |
|---|
data | array of object | Yes | The matching records for this page. |
pagination | object | No | How many more pages of results exist. Absent when the API returned an unpaged result. |
pagination.page | integer | When parent supplied | Current page number, 1-based. |
pagination.per_page | integer | When parent supplied | Number of results per page. |
pagination.total_pages | integer | When parent supplied | Total number of pages available. |
Get one piece of company equipment with its details and assignee.
| Field | Type / accepted values | Required | Details |
|---|
id | integer | Yes | Equipment ID |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Add a piece of company equipment, a truck, trailer, tool or machine the business owns. Leave name off and it is derived from year/make/model, falling back to the serial number and then the category. Setting replacement_date automatically creates a "Replace <name>" reminder task.
| Field | Type / accepted values | Required | Details |
|---|
name | string | No | Display name. Omit to derive it from year, make and model. |
category | "vehicle", "trailer", "tool", "machine", "other" | No | Default: other. |
status | "active", "in_repair", "retired", "sold" | No | Default: active. |
description | string | No | |
make | string | No | Manufacturer, e.g. Ford. |
model | string | No | Model, e.g. F-250. |
year | integer | No | Model year. |
serial_number | string | No | Serial or VIN. |
purchase_date | string | No | YYYY-MM-DD. |
purchase_price | number | No | |
warranty_expiration | JSON value | No | YYYY-MM-DD. |
warranty_number | string | No | |
replacement_date | JSON value | No | When it is due for replacement (YYYY-MM-DD). Setting this creates a reminder task automatically; clearing it removes that task if still open. |
assignee_id | string | No | UUID of the team member responsible. Use list_users to resolve a name. Format: uuid. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Update a piece of company equipment. Send only the fields that change, the server merges them over the existing record, so a status change on its own will not disturb the name or other details.
| Field | Type / accepted values | Required | Details |
|---|
id | integer | Yes | Equipment ID |
name | string | No | |
category | "vehicle", "trailer", "tool", "machine", "other" | No | |
status | "active", "in_repair", "retired", "sold" | No | active, in_repair, retired or sold. |
description | string | No | |
make | string | No | |
model | string | No | |
year | integer | No | |
serial_number | string | No | |
purchase_date | string | No | YYYY-MM-DD. |
purchase_price | number | No | |
warranty_expiration | JSON value | No | YYYY-MM-DD. |
warranty_number | string | No | |
replacement_date | JSON value | No | Changing this moves the automatic replacement reminder task. |
assignee_id | string | No | UUID of the responsible team member. Use list_users to resolve names. Format: uuid. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Delete a piece of company equipment, along with its tasks and service log. To take something out of service without losing its history, set status to "retired" or "sold" instead.
| Field | Type / accepted values | Required | Details |
|---|
id | integer | Yes | Equipment ID |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
List maintenance tasks on a piece of company equipment, services, inspections, and the automatic replacement reminder.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment ID |
status | array of "open", "completed", "overdue" | No | Filter by status: open, completed, overdue. |
page | integer | No | |
per_page | integer | No | minimum: 1. maximum: 100. |
| Field | Type / accepted values | Required | Details |
|---|
data | array of object | Yes | The matching records for this page. |
pagination | object | No | How many more pages of results exist. Absent when the API returned an unpaged result. |
pagination.page | integer | When parent supplied | Current page number, 1-based. |
pagination.per_page | integer | When parent supplied | Number of results per page. |
pagination.total_pages | integer | When parent supplied | Total number of pages available. |
Add a maintenance task to a piece of company equipment, an oil change, an inspection, a repair to book. Use recurrence for scheduled servicing that repeats.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the task belongs to. |
title | string | Yes | e.g. "Oil change" or "Annual DOT inspection". |
description | string | No | |
due_date | string or string | No | When it is due, as an ISO timestamp. Required for a recurring task, the series repeats from this date. |
assignee_id | string | No | UUID of the team member responsible. Use list_users to resolve names. Format: uuid. |
reminders_enabled | boolean | No | Whether the assignee is notified as the due date approaches. Defaults to FALSE, so without it the task is a silent to-do. |
recurrence_type | "single", "recurring" | No | Set to 'recurring' for scheduled maintenance that repeats, an oil change every 3 months, an annual inspection. Default: 'single'. |
repeat_frequency | integer | No | Interval, used when repeat_frequency_unit is 'custom'. |
repeat_frequency_unit | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | How often it repeats. Default: weekly. |
repeat_frequency_unit_custom | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | Unit the custom interval counts in. Only used with repeat_frequency_unit='custom'. |
repeat_frequency_schedule | object | No | Which days a custom weekly or monthly pattern lands on. Required for those. |
repeat_frequency_schedule.days | array of JSON value | When parent supplied | 1-7 for weekdays, 1-31 for days of the month. |
repeat_frequency_schedule.type | "weekDays", "monthWeekDays", "monthDays" | When parent supplied | |
repeat_duration | JSON value | No | How long it repeats. Required unless repeat_duration_unit is 'forever'. |
repeat_duration_unit | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | How it ends: 'forever', 'occurrences', or a time unit. Default: forever. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Edit a maintenance task. To mark one done use complete_equipment_task, which for repeating servicing completes only that occurrence.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the task belongs to. |
task_id | JSON value | Yes | Task ID. |
title | string | No | |
description | string | No | |
due_date | string or string | No | ISO timestamp with timezone. |
assignee_id | string | No | UUID of the team member responsible. Use list_users to resolve names. Format: uuid. |
reminders_enabled | boolean | No | |
update_scope | "single", "all", "recreate" | No | For repeating servicing: 'single' changes this one, 'all' applies to future ones, 'recreate' rebuilds the schedule after a pattern change. Default: single. |
recurrence_type | "single", "recurring" | No | Set to 'recurring' for scheduled maintenance that repeats, an oil change every 3 months, an annual inspection. Default: 'single'. |
repeat_frequency | integer | No | Interval, used when repeat_frequency_unit is 'custom'. |
repeat_frequency_unit | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | How often it repeats. Default: weekly. |
repeat_frequency_unit_custom | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | Unit the custom interval counts in. Only used with repeat_frequency_unit='custom'. |
repeat_frequency_schedule | object | No | Which days a custom weekly or monthly pattern lands on. Required for those. |
repeat_frequency_schedule.days | array of JSON value | When parent supplied | 1-7 for weekdays, 1-31 for days of the month. |
repeat_frequency_schedule.type | "weekDays", "monthWeekDays", "monthDays" | When parent supplied | |
repeat_duration | JSON value | No | How long it repeats. Required unless repeat_duration_unit is 'forever'. |
repeat_duration_unit | "daily", "weekly", "monthly", "yearly", "custom", "forever", "occurrences" | No | How it ends: 'forever', 'occurrences', or a time unit. Default: forever. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Mark a maintenance task done, or reopen it. For repeating servicing this affects only the single occurrence.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the task belongs to. |
task_id | JSON value | Yes | Task ID. |
status | "open", "completed", "overdue" | Yes | completed, open or overdue. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Delete a maintenance task. To record that it was done, use complete_equipment_task instead, deleting loses the history.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the task belongs to. |
task_id | JSON value | Yes | Task ID. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Read the service log for a piece of company equipment: notes, maintenance, repairs and inspections.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment ID |
type | "note", "maintenance", "repair", "inspection" | No | Filter to one kind of entry: note, maintenance, repair, inspection. |
page | integer | No | |
per_page | integer | No | minimum: 1. maximum: 100. |
| Field | Type / accepted values | Required | Details |
|---|
data | array of object | Yes | The matching records for this page. |
pagination | object | No | How many more pages of results exist. Absent when the API returned an unpaged result. |
pagination.page | integer | When parent supplied | Current page number, 1-based. |
pagination.per_page | integer | When parent supplied | Number of results per page. |
pagination.total_pages | integer | When parent supplied | Total number of pages available. |
Record work done on a piece of company equipment, a repair, a service, an inspection result, or a plain note. This is the equipment history, so record what happened here rather than only completing the task.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the entry belongs to. |
title | string | Yes | e.g. "Replaced brake pads". |
content | string | No | The detail of what was done. |
type | "note", "maintenance", "repair", "inspection" | No | note, maintenance, repair or inspection. Default: note. |
activity_date | string or string | No | When the work actually happened, if not today. Logging a repair a week later should carry the repair date, not the date it was typed up. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Edit an entry in a piece of equipment's service log.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the entry belongs to. |
note_id | JSON value | Yes | Note ID. |
title | string | No | |
content | string | No | |
type | "note", "maintenance", "repair", "inspection" | No | |
activity_date | string or string | No | When the work happened, as an ISO timestamp with timezone. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
Delete an entry from a piece of equipment's service log.
| Field | Type / accepted values | Required | Details |
|---|
equipment_id | integer | Yes | Equipment the entry belongs to. |
note_id | JSON value | Yes | Note ID. |
| Field | Type / accepted values | Required | Details |
|---|
data | object or null | Yes | The affected record, or the result of the operation. Null when nothing matched. |
The downloadable tool schemas include the full input and output contracts. Tables describe schema-level required fields; cross-field rules still apply.