https://github.com/revit-mcp/revit-mcp
AI-Powered Revit Modeling
https://github.com/revit-mcp/revit-mcp
mcp revit
Last synced: 5 months ago
JSON representation
AI-Powered Revit Modeling
- Host: GitHub
- URL: https://github.com/revit-mcp/revit-mcp
- Owner: revit-mcp
- License: mit
- Created: 2025-03-14T06:47:14.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-11-10T04:06:34.000Z (7 months ago)
- Last Synced: 2025-11-10T06:07:43.737Z (7 months ago)
- Topics: mcp, revit
- Language: TypeScript
- Homepage: http://revit-mcp.com/
- Size: 120 KB
- Stars: 283
- Watchers: 14
- Forks: 94
- Open Issues: 7
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-mcp - revit-mcp/revit-mcp - revit-mcp is an AI-powered MCP server that enables AI clients to interact with Autodesk Revit for creating, modifying, and managing building elements through the Model Context Protocol. (MCP Servers / Design & Visualization)
- metorial-index - Revit MCP - Interact with Revit projects to retrieve project data, modify elements, and execute AI-generated code within the Revit environment, facilitating intelligent automation and real-time collaboration. (Task and Project Management)
- awesome-mcp-security - revit-mcp - powered MCP server enabling Claude and other AI clients to interact with R... | 78 ⚠️ | 362 | [表示](https://agentseal.org/mcp/https-githubcom-revit-mcp-revit-mcp) | (カテゴリ / 🛠️ <a name="developer-tools"></a>開発ツール)
- awesome-mcp-servers - Revit MCP - AI-Powered Revit Modeling MCP server that enables AI assistants to interact with Autodesk Revit BIM software through natural language commands for architectural modeling. ([Read more](/details/revit-mcp.md)) `BIM` `Revit` `Autocad` (Design Tools)
README
[](https://mseep.ai/app/revit-mcp-revit-mcp)
# revit-mcp
English | [简体中文](README_zh.md)
## 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](https://github.com/revit-mcp/revit-mcp-plugin) (driving Revit) in conjunction.
Join [Discord](https://discord.gg/cGzUGurq) | [QQ Group](http://qm.qq.com/cgi-bin/qm/qr?_wv=1027&k=kLnQiFVtYBytHm7R58KFoocd3mzU_9DR&authKey=fyXDOBmXP7FMkXAWjddWZumblxKJH7ZycYyLp40At3t9%2FOfSZyVO7zyYgIROgSHF&noverify=0&group_code=792379482)
## 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](https://github.com/revit-mcp/revit-mcp-plugin)
## Installation
### 1. Build local MCP service
Install dependencies
```bash
npm install
```
Build
```bash
npm run build
```
### 2. Client configuration
**Claude client**
Claude client -> Settings > Developer > Edit Config > claude_desktop_config.json
```json
{
"mcpServers": {
"revit-mcp": {
"command": "node",
"args": ["\\build\\index.js"]
}
}
}
```
Restart the Claude client. When you see the hammer icon, it means the connection to the MCP service is normal.

## Framework
```mermaid
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 |