Revit MCP › Tools

Tools reference

Revit MCP tools: the full list

These are the tools the AI Connector for Revit exposes through the Model Context Protocol. The AI assistant picks them for you: you ask in plain language, and it calls small, tested tools instead of writing code. Tool names are the same in every language.

The free version includes the Read tools. The Pro version adds the Edit and Create tools. Both are installed with NonicaTab from the Autodesk App Store.

Read and analyze Free

Query the open model: categories, elements, parameters, views, sheets, geometry, worksets and warnings. Read tools never change the model.

Model and session

get_active_view_in_revit
Gets the name, id and screen directions of the view, sheet or schedule open in Revit.
get_user_selection_in_revit
Gets the elements the user has selected in Revit.
get_model_categories
Lists every category in the model with its name and id.
get_categories_by_keywords
Finds categories by keyword (for example Door, Wall or View).
get_all_project_units
Lists the project units and symbols set in the model.
get_all_warnings_in_the_model
Lists every warning in the model with its description, severity and related elements.
get_document_switched
Switches to a linked model, or back to the main model, so the next tools read from it.

Elements and families

get_elements_by_category
Gets all elements of one or more categories, in the whole model or in one view.
get_all_elements_shown_in_view
Gets the elements shown in a view, the rows listed in a schedule, or the items placed on a sheet.
get_all_families_in_model
Lists all loadable families in the model, with a count.
get_all_used_families_of_category
Lists the loadable families used in one category.
get_all_types_of_families
Lists the types of each family, including system families like walls and floors.
get_all_elements_of_specific_families
Gets all elements of the named families.
get_all_elementids_for_specific_type_ids
Gets all elements of each given type.
get_element_types_for_elementids
Gets the type of each element, with a count.
get_categories_from_elementids
Gets the category of each element.
get_object_classes_from_elementids
Gets the Revit API class of each element (for example Wall or FamilyInstance).
get_children_for_element_ids
Gets hosted elements, tags and dimensions of each element. Useful to find untagged or undimensioned elements.
get_host_id_for_element_ids
Gets the host or tagged element of doors, windows, fixtures and tags.
get_element_ids_from_subsets
Expands a saved group of results into the individual element ids.
get_size_in_mb_of_families
Ranks loadable families by file size in MB, and gives the size of the model file.

Parameters and properties

get_parameters_from_elementid
Gets every parameter and value of one element or type.
get_parameters_values_for_element_ids
Reads parameter values for many elements at once, or filters them by value.
get_all_additional_properties_from_elementid
Gets the extra Revit API properties of one element, when they are not parameters.
get_additional_properties_for_all_elementids
Reads extra Revit API properties for many elements at once, or filters them by value.
get_material_layers_from_types
Gets the material layers, names and widths of wall, floor, roof and ceiling types.

Views, sheets and graphics

get_schedules_info_and_columns
Gets the columns, headers and fields of schedules.
get_viewports_and_schedules_on_sheets
Gets the viewports, schedules and legends placed on each sheet.
get_graphic_filters_applied_to_views
Gets the view filters applied to each view or sheet.
get_graphic_overrides_for_element_ids_in_view
Gets the colors, patterns and visibility overrides of elements, worksets, links or categories in a view.
get_graphic_overrides_view_filters
Gets the colors and patterns that view filters apply in a view.
get_if_elements_pass_filter
Checks which elements pass a given view filter.

Geometry and location

get_location_for_element_ids
Gets the location point or curve of each element.
get_boundingboxes_for_element_ids
Gets the size and position (bounding box) of each element.
get_boundary_lines
Gets the exact boundary lines of walls, floors and rooms as XYZ points.

Worksets and collaboration

get_all_workset_information
Lists every workset in the model with its owner and creator.
get_worksets_from_elementids
Gets the workset of each element and whether it can be edited.
get_worksharing_information_for_element_ids
Gets the creator, owner and last editor of each element in a workshared model.

Workflows

start_read_workflow
Runs several read tools in one chain, passing results from one step to the next. Faster and uses fewer tokens.

Edit Pro

Change the model: set parameters, move, rotate, copy or delete elements, and control selection, isolation and colors in a view.

set_parameter_value_for_elements
Sets a parameter value on many elements or types at once, with units if needed.
set_additional_property_for_all_elements
Sets an extra Revit API property on many elements at once.
set_movement_for_elements
Moves elements by a vector. Hosted elements follow their host.
set_rotation_for_elements
Rotates elements by an angle around an axis.
set_copy_elements
Copies or duplicates elements, views and sheets by a vector. Hosted elements are copied with them.
set_delete_elements
Deletes elements, with their hosted elements and annotations.
set_user_selection_in_revit
Selects elements in Revit so the user sees them.
set_isolated_elements_in_view
Isolates elements, types or categories in a view.
set_graphic_overrides_for_elements_in_view
Colors elements, types or categories in a view, or clears their overrides.
set_copy_view_filters
Copies view filters and their graphics from one view to other views.
set_revisions_on_sheets
Assigns or removes revisions on sheets.

Create and document Pro

A catalog of creation, documentation and export tools (views, schedules, sheets, grids, levels, tags, print and export). The AI first lists what is available, then reads the arguments, then runs the tool.

create_tool_names_explorer
Lists the creation, documentation and export tools available (views, schedules, sheets, grids, levels, tags, print and export).
create_tool_arguments_explorer
Gets the arguments each creation tool needs.
create_tools_invoker
Runs a creation tool with its arguments.