revit mcp

Local 2025-09-01 00:14:04 0
Developer Tools @revit-mcp/revit-mcp

Allows AI to interact with Autodesk Revit via the MCP protocol, enabling retrieval of project data and automation of tasks like creating, modifying, and deleting elements.


English | 简体中文

Description

revit-mcp allows you to interact with Revit using the MCP protocol through MCP-supported clients (such as Claude, Cline, etc.).

This project is the server side (providing Tools to AI), and you need to use revit-mcp-plugin (driving Revit) in conjunction.

Join Discord | QQ Group

Features

  • Allow AI to get data from the Revit project
  • Allow AI to drive Revit to create, modify, and delete elements
  • Send AI-generated code to Revit to execute (may not be successful, successful rate is higher in some simple scenarios with clear requirements)

Requirements

  • nodejs 18+

Complete installation environment still needs to consider the needs of revit-mcp-plugin, please refer to revit-mcp-plugin

Installation

1. Build local MCP service

Install dependencies

npm install

Build

npm run build

2. Client configuration

Claude client

Claude client -> Settings > Developer > Edit Config > claude_desktop_config.json

{
    "mcpServers": {
        "revit-mcp": {
            "command": "node",
            "args": ["<path to the built file>buildindex.js"]
        }
    }
}

Restart the Claude client. When you see the hammer icon, it means the connection to the MCP service is normal.

claude

Framework

flowchart LR
    CladueDesktop --> revit-mcp --> SocketService--commandName-->CommandlSet--command-->CommandExecute
    CommandManager --> CommandlSet
    CommandExecute --executeResult--> SocketService
    CommandProject1 --> CommandManager
    CommandProject2 --> CommandManager
    CommandProject... --> CommandManager
    subgraph ide1 [MCPClient]
    CladueDesktop
    end
    subgraph ide2 [MCPServer]
    revit-mcp
    end
    subgraph ide3 [Revit]
            subgraph ide3.1 [revit-mcp-plugin]
                SocketService
                CommandlSet
                CommandManager
                CommandExecute
            end
    end

Supported Tools

Name Description
get_current_view_info Get current view info
get_current_view_elements Get current view elements
get_available_family_types Get available family types in current project
get_selected_elements Get selected elements
create_point_based_element Create point based element (door, window, furniture)
create_line_based_element Create line based element (wall, beam, pipe)
create_surface_based_element Create surface based element (floor, ceiling)
delete_elements Delete elements
reset_model Reset model (delete process model when executing continuous dialog)
modify_element Modify element's properties (instance parameters)
search_modules Search for available modules
use_module Use module
send_code_to_revit Send code to Revit to execute
color_splash Color elements based on a parameter value
tag_walls Tag all walls in view