Skip to main content
Glama
sharafutdinovdi

Revit Model MCP

Update Parameters

revit_update_parameters
Destructive

Update Revit element parameters in bulk using query filters; preview changes with dry_run and safely skip grouped members instead of failing.

Instructions

Update a parameter on elements matching the same filters as revit_query_elements. Group members are reported in skipped.inGroup instead of failing the call; dry_run predicts this.

Input Schema

NameRequiredDescriptionDefault
valueYes
dry_runNo
filtersYes
documentNoTitle or file name substring of the target open document; needed when several are open.
parameterYes
max_elementsNo
parameter_idNo
include_type_parametersNo

Output Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed20 schema fields changedv0.10.0
    • removedInput schema / $defs / UpdateFilters / properties / area_scheme / title
      Removed value: -"Area Scheme"
    • removedInput schema / $defs / UpdateFilters / properties / categories / title
      Removed value: -"Categories"
    • removedInput schema / $defs / UpdateFilters / properties / family / title
      Removed value: -"Family"
    • removedInput schema / $defs / UpdateFilters / properties / level / title
      Removed value: -"Level"
    • removedInput schema / $defs / UpdateFilters / properties / parameter_filters / title
      Removed value: -"Parameter Filters"
    • removedInput schema / $defs / UpdateFilters / properties / phase / title
      Removed value: -"Phase"
    • removedInput schema / $defs / UpdateFilters / properties / type_name / title
      Removed value: -"Type Name"
    • removedInput schema / $defs / UpdateFilters / properties / view / title
      Removed value: -"View"
    • removedInput schema / $defs / UpdateFilters / properties / workset / title
      Removed value: -"Workset"
    • removedInput schema / $defs / UpdateFilters / title
      Removed value: -"UpdateFilters"
    • changedInput schema / properties / document / description
      Previous value: -"Case-insensitive substring of the target open document's title or file name. Required to disambiguate when the Revit process has more than one document open; omit only when a single document is open (the active document is used). An unknown or ambiguous reference is rejected before any change."New value: +"Title or file name substring of the target open document; needed when several are open."
    • removedInput schema / properties / document / title
      Removed value: -"Document"
    • removedInput schema / properties / dry_run / title
      Removed value: -"Dry Run"
    • removedInput schema / properties / include_type_parameters / title
      Removed value: -"Include Type Parameters"
    • removedInput schema / properties / max_elements / title
      Removed value: -"Max Elements"
    • removedInput schema / properties / parameter / title
      Removed value: -"Parameter"
    • removedInput schema / properties / parameter_id / title
      Removed value: -"Parameter Id"
    • removedInput schema / properties / value / title
      Removed value: -"Value"
    • removedInput schema / title
      Removed value: -"revit_update_parametersArguments"
    • removedOutput schema / title
      Removed value: -"revit_update_parametersDictOutput"
  2. Addedv0.9.1

TDQS

A3.5/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true, idempotentHint=false, so the mutation profile is covered. The description adds real value beyond that: group members are reported in skipped.inGroup rather than failing the call (partial-failure semantics), and dry_run predicts the outcome. It omits scope/limits detail such as the max_elements cap, but the failure-handling disclosure is meaningful.

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 compact sentences with zero filler, and the core action plus the query_elements filter reference is front-loaded. Every clause carries information.

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?

An output schema exists so return values need not be described, and the skipped.inGroup behavior is covered. However, for a destructive batch update touching up to 20000 elements with 8 mostly undocumented parameters, the description leaves scope limits, parameter_id, and include_type_parameters unexplained, so it is only minimally complete.

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

Parameters2/5

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

Schema description coverage is only 13% (effectively just 'document'), and 8 parameters exist. The description names filters, dry_run, parameter and value only in passing, leaving max_elements, parameter_id, include_type_parameters and the accepted value types undocumented in both description and schema. It does not compensate for the coverage gap.

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 states a specific verb (Update) and resource (a parameter on elements) and anchors the filter semantics to the sibling revit_query_elements. It does not, however, distinguish itself from revit_set_parameter, which appears in the sibling list and is the most likely source of agent confusion.

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?

It implies a workflow by pointing to revit_query_elements for filter behavior and mentions dry_run as a preview, which is genuinely useful guidance. But there is no explicit when-to-use / when-not-to-use statement, and the relationship to revit_set_parameter or revit_parameter_fill_check is left for the agent to infer.

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

Deploy Server

Other Tools