Skip to main content
Glama

Buildium MCP by usefulapi

Create a work order

buildium_create_work_order
Destructive

Create a work order for a vendor. Attach it to an existing task (task_id) or create a new task with it (task: title, priority, status, assigned staff user, optional due date/property/unit). vendor_id and entry_allowed are required. Line items are optional (quantity x unit price, optional GL account). Buildium: POST /v1/workorders.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
taskNoA new task to create and link to this work order (instead of task_id).
titleNoWork order title (max 127 chars).
task_idNoExisting task to attach this work order to.
vendor_idYesVendor id doing the work.
line_itemsNoWork order line items.
entry_notesNoNotes on entering the unit.
vendor_notesNoNotes for the vendor.
work_detailsNoDescription of the work.
chargeable_toNoWho will be charged for the work (max 100).
entry_allowedYesWhether entry to the unit is allowed.
invoice_numberNoVendor invoice/reference number (max 50).
entry_contact_idsNoEntry contact user ids (RentalTenant, AssociationOwner, Staff or RentalOwner).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / $schema
      Previous value: -"http://json-schema.org/draft-07/schema#"New value: +"https://json-schema.org/draft/2020-12/schema"
  2. First observed

TDQS

B3.4/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

destructiveHint=true already flags this as a mutating operation, so the bar is lower. The description adds one genuinely useful behavioral fact beyond the annotations: creating a work order can also create and link a new task, and task_id versus task are alternative modes. It says nothing about permissions, consequences, or what the call returns.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three dense sentences plus the endpoint, with the core purpose front-loaded and the task-vs-task_id branching given next. It loses a little to redundancy, since 'vendor_id and entry_allowed are required' and the line-item shape are already in the schema.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 12-parameter mutation with nested objects and no output schema, the description covers purpose, the two task modes, required fields, and line items. It leaves half the parameters (entry_notes, vendor_notes, work_details, chargeable_to, invoice_number, entry_contact_ids) unmentioned and gives no sense of the response body an agent should expect.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already documents all 12 parameters, including the nested task and line_items objects. The description restates required fields (vendor_id, entry_allowed) and line-item shape, which duplicates the schema rather than adding new semantics such as cross-field validity rules.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb+resource ('Create a work order for a vendor') and pins it to POST /v1/workorders, which cleanly separates it from buildium_get_work_order and buildium_list_work_orders. It does not, however, distinguish itself from the overlapping buildium_create_todo_task sibling, even though it can create a task as a side effect.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives real argument-level routing ('Attach it to an existing task (task_id) or create a new task with it'), which tells the agent how to pick between the two creation modes. It offers no tool-level guidance, though — no when-to-use/when-not, no mention of alternatives like buildium_create_todo_task or buildium_update_work_order.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.