Skip to main content
Glama

revit-mcp

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

GitHub Copilot Compatibility

This MCP server has been updated to be fully compatible with GitHub Copilot. The tool schemas now properly include the required items property for array parameters, resolving validation errors that previously occurred when using array-type parameters with GitHub Copilot's MCP client.

  • 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>\\build\\index.js"] } } }

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

GitHub Copilot

GitHub Copilot supports MCP servers natively. Configure the server in your VS Code settings or workspace configuration:

{ "mcp": { "servers": { "revit-mcp": { "command": "node", "args": ["<path to the built file>\\build\\index.js"] } } } }

Restart VS Code or reload the window to apply the configuration.

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

-
security - not tested
A
license - permissive license
-
quality - not tested

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/Mohamed-Elnahla/revit-mcp-github-copilot'

If you have feedback or need assistance with the MCP directory API, please join our Discord server