Tools and Language Support

The Revit Public MCP Server provides different tool sets depending on the server configuration you install. You only need to install one server configuration.

During the Technical Preview, the Write and Experimental tool sets continue to evolve. Available tools and tool behavior may change before General Availability.

Note:

The Revit MCP Server Write-Tools Technical Preview and Revit MCP Server Experimental-Tools Technical Preview can modify your Revit model. Review the proposed changes before accepting them. Consider creating a backup of your model before performing write operations.

Tool reference

The following table describes the tools available in each Revit Public MCP Server configuration.

Tool Tool name Description Available in
Get Fill And Line Patterns get_fill_and_line_patterns Gets all project fill and line patterns, including their IDs and names. Experimental
Override Elements Graphics override_elements_graphics Overrides graphics for elements or categories in specified views, including fill patterns, colors, line weights, and detail level. For Coordination Model links, transparency and surface foreground color are supported. Experimental
Create Section View create_section_view Creates a section view for a specified bounding box and returns the ID of the new view. Experimental
Create Sheet create_sheet Creates a sheet using a specified title block and returns the ID of the new sheet. Experimental
Get All View Templates get_all_view_templates Gets information about project view templates, including their IDs, names, view types, scales, and display settings. Experimental
Get All Sheet Collections get_sheet_collections Gets the sheet collections in the model, including their IDs and names. Experimental
Get Sheets in a Sheet Collection get_sheets_in_sheet_collection Gets the sheets that belong to a specified sheet collection, including their IDs, names, and numbers. Experimental
Get All Sheets get_sheets Gets all sheets in the model, including their IDs, names, and numbers. Experimental
Get Views on Sheets get_views_on_sheets Gets the views and schedules placed on specified sheets, including view IDs, names, types, and placement information. Experimental
Get All Views get_views Gets all views in the model, including their IDs, names, and types, and identifies the active view. Experimental
Rename Sheet rename_sheet Changes the name of a specified sheet. Experimental
Set Sheet Number set_sheet_number Changes the sheet number of a specified sheet. Experimental
Create Plan Views create_plan_views Creates floor plan views for specified levels and returns the IDs of the created views. Experimental
Open View open_view Opens a specified Revit view and makes it the active view. Provide the Revit view ID. Use this tool to navigate to or work in a specific view. Read, Write, Experimental
Create Schedule create_schedule Creates a schedule for elements of a specified category using selected fields. Experimental
Get All Schedules get_all_schedules Gets the IDs and names of all schedules in the model. Experimental
Get Schedulable Fields get_schedulable_fields Gets the fields that can be included in a schedule for a specified category. Experimental
Get Schedule Definition get_schedule_definition Gets the current filters and sorting or grouping settings for an existing schedule. Experimental
Modify Schedule Filters modify_schedule_filters Adds or removes filters from an existing schedule. You are asked to confirm before removing filters. Experimental
Modify Schedule Grouping modify_schedule_grouping Adds or removes grouping from an existing schedule. You are asked to confirm before removing grouping. Experimental
Modify Schedule Sorting modify_schedule_sorting Adds or removes sorting from an existing schedule. You are asked to confirm before removing sorting. Experimental
Get Room Boundaries get_room_boundaries Gets room boundaries as loops of points. Non-linear boundary segments are simplified to straight lines between their endpoints. Experimental
Get Rooms get_rooms Gets information about rooms in the model, including their IDs, names, numbers, areas, and locations. Experimental
Query Model query_model Finds elements using criteria such as category, parameter values, view, or name. Provide the query criteria. The tool returns matching element IDs and analysis information, including element counts and breakdowns that can help refine subsequent queries. Read, Write, Experimental
Get Active Context get_active_context Gets the active document, active view, and currently selected element IDs. Read, Write, Experimental
Export gbXML export_gbxml Exports the document's Energy Model to a gbXML file for use in third-party energy analysis tools. Experimental
Export IFC export_ifc Exports the active Revit document to an IFC file. Experimental
Export Views export_views Exports specified Revit views to image or PDF files and schedule views to CSV. Provide the view IDs, output format, and destination folder. All selected views are exported using the same format. Read, Write, Experimental
Get Element Data get_element_data Gets parameter values and other information for specified Revit elements. Provide one or more element IDs. Results can include names, levels, classes, families, parameters, and bounding boxes. Read, Write, Experimental
Modify Element Parameters modify_element_parameters Modifies parameters for one or more elements. It can also change element types. Changes may produce Revit warnings or errors that require attention. Write, Experimental
Delete Elements delete_elements Deletes specified elements from the model. You are asked to confirm before deleting elements. Deletion may produce Revit warnings or errors that require attention. Experimental
Move Elements move_elements Moves specified elements using a three-dimensional translation. Moving elements may produce Revit warnings or errors that require attention. Write, Experimental
Rotate Elements rotate_elements Rotates specified elements in three-dimensional space around an axis. View-specific elements can only be rotated within their view. Write, Experimental
Select Elements select_elements Selects specified elements in the active Revit model. Provide one or more element IDs. Use this tool to highlight elements found by another tool, such as query_model. Read, Write, Experimental
Show Elements show_elements Zooms or focuses the active view on specified elements. Provide one or more element IDs. The elements must be visible in the active view. Read, Write, Experimental
Get Annotation Include Categories get_annotation_include_categories Gets the annotation categories present in a view and indicates which categories are included for Isolate Annotations. Experimental
Set Annotation Include Categories set_annotation_include_categories Sets which annotation categories are included for Isolate Annotations. Category names must match the names reported by Revit. Experimental
Tag Elements tag_elements Tags specified elements in specified views. Elements that are already tagged are not tagged again. Experimental
Get Running Revit Instances get_running_revit_instances Lists all currently running Revit instances, including the process ID and the name of the open document. No parameters are required. Use this information to identify the Revit instance or model you want to work with. Read, Write, Experimental