Skip to main content
Glama

AssetLab

Update PM template

update_pm_template
DestructiveIdempotent

Update an existing PM template by ID. Requires pm_templates:write scope.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYesPM template ID
tasksNoChecklist of tasks baked into this template
titleNoPM template title
asset_idsNoDefault asset IDs
documentsNoDocument references
frequencyNoSuggested maintenance frequency
resourcesNoResource references (parts, tools, materials, equipment)
descriptionNoDescription
location_idsNoDefault location IDs
work_categoryNoWork category label (free text)
estimated_costNoEstimated cost
estimated_hoursNoEstimated hours
form_template_idNoForm template ID to attach to every work order this generates - resolve via list_form_templates. Use a PUBLISHED template: generation resolves the current published version of the form, so a draft attaches nothing until it is published.
work_category_idNoWork category ID
safety_requirementsNoSafety requirements
custom_interval_weeksNoCustom interval in weeks (when frequency is CUSTOM)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

B3.2/5.0
Behavior3/5

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

Annotations already declare destructiveHint=true, idempotentHint=true, and readOnlyHint=false, so the safety profile is covered structurally. The description adds a genuinely useful non-schema detail, the required pm_templates:write scope, but says nothing about partial-update semantics (whether omitted fields are preserved or cleared), which matters a lot for a 16-field destructive update.

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

Conciseness5/5

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

Two sentences, zero filler, with the operation stated first and the authorization requirement second. Every sentence carries actionable information.

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

Completeness2/5

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

For a mutation tool with 16 parameters, no output schema, and a destructiveHint=true annotation, the description should at minimum explain partial-update behavior and that changes take effect on generated work orders. As written, an agent cannot tell whether omitting a field leaves it untouched or wipes it.

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%, including rich inline guidance on form_template_id (resolve via list_form_templates, must be PUBLISHED) and the CUSTOM frequency coupling. The description adds no parameter meaning of its own beyond noting the ID lookup, so baseline 3 is appropriate when the schema does the heavy lifting.

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?

The description gives a specific verb and resource ('Update an existing PM template') and identifies the lookup key ('by ID'), so an agent knows exactly which entity is being modified. It does not explicitly contrast itself with siblings like create_pm_template, delete_pm_template, or update_pm_schedule, but the verb+resource pairing is unambiguous.

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

Usage Guidelines2/5

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

There is no when-to-use guidance, no mention of prerequisites (e.g. the template must already exist), and no routing to alternatives such as list_pm_templates for discovery or create_pm_template for new templates. The only guidance is the implied 'existing' qualifier.

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.

Resources