
Revit MCP
io.github.shuotaoPublished by GitHub account shuotaov1.6.0Updated Oct 25, 2026
MCP Server for Revit integration - AI-Powered Revit Control
Overview
Local MCP bridge that lets an AI client drive Autodesk Revit through 239 BIM tools, forwarding calls to a Revit add-in over a local WebSocket.
- What you can do
- Run Revit modeling and documentation tasks in plain language, such as dimensioning walls or checking curtain-wall elevations
- Apply BIM standards and SOPs for building code, quantity take-off and compliance checks
- Detect clashes, with an optional interactive clash-review panel in hosts that support MCP Apps
- Query live Revit view, level, selection and document state during a session
- When to use it
- For BIM engineers and architects on Windows who use Revit 2022-2026 and want AI-assisted, standards-based modeling, documentation and compliance workflows inside their existing AI client.
- Requirements
- Windows 10 or later with Autodesk Revit 2022-2026 installed; .NET Framework 4.8 (Revit 2022-2024) or .NET 8 (Revit 2025-2026) to build the C# add-in; Node.js LTS, preferably 20.x or later, for the npm stdio bridge. The add-in must be built and deployed separately, Revit must be running with the MCP service enabled in the ribbon, and the bridge connects to localhost port 8964.
Installation
In SourceWeft
- Open Revit MCP in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
Revit MCP - AI-Powered Revit Control
English | 繁體中文
Revit MCP lets AI clients call Autodesk Revit tools through the Model Context Protocol (MCP). The MCP server forwards tool calls to a local Revit add-in, and the add-in executes the corresponding Revit API workflow.
- Demo video: Revit MCP - AI-Powered BIM Workflow Demonstration
- Knowledge site: https://shuotao.github.io/REVIT_MCP_study/
- Default WebSocket port:
8964
What is this?
Talk to Revit in plain language. Ask your AI client to "dimension every wall on this view" or "check the curtain-wall elevations", and Revit does it — through 239 MCP tools backed by 90 professional BIM SOPs (building code, quantity take-off, compliance checks).
Who it's for: BIM engineers and architects who use Revit and want AI-assisted, standards-based workflows. You'll need Revit (2022–2026) on Windows and to be comfortable installing an add-in.
Quickstart (3 steps)
- Install the Revit add-in. Build and deploy the C# add-in — see Manual Setup. This is the half that actually talks to Revit.
- Point your AI client at the MCP server. No cloning needed — it runs straight from npm:
- Open Revit, enable the MCP service in the ribbon, and start asking. Full setup: AI Client Configuration.
Questions or want to show what you built? → Discussions
Current Project Counts
When these numbers change, update CLAUDE.md, README.zh-TW.md, this file, docs/DOCUMENT_AUDIENCE_INVENTORY.md, and run:
New: Interactive Clash Viewer (MCP Apps)
detect_clashes can now render an interactive clash-review UI inline in the conversation, via the MCP Apps extension (io.modelcontextprotocol/ui). This requires an MCP host that supports the extension. It is purely additive:
- Interactive rendering only happens in GUI hosts that support MCP Apps (Claude Desktop, the claude.ai web app, VS Code GitHub Copilot). A terminal CLI like Claude Code can't render the panel and always shows the text result — this is expected, not a fault.
- Hosts without MCP Apps support keep getting
detect_clashes's normal text result — nothing changes for them. - The stdio connection and the existing Revit add-in are unaffected; no reinstall or reconfiguration is needed.
See docs/MIGRATION_GUIDE.md for the full MCP 2026-07-28 upgrade notes.
Architecture
External AI clients do not need an API key inside this repository. Their account and authorization are managed by the AI client itself. Only an embedded Revit chat feature that directly calls an AI API would need an API key.
Requirements
One-Click Setup
Recommended for new users:
For AI agents or non-interactive setup:
The setup script checks prerequisites, installs dependencies, builds the MCP server, builds and deploys the Revit add-in, and helps configure common AI clients.
Install from MCP Registry
The MCP server is published on the MCP Registry as io.github.shuotao/revit-mcp-server (npm package @shuotao/revit-mcp-server). Run it directly with:
Note: this npm package is only the Node stdio bridge. The C# Revit add-in (MCP/) must still be installed separately — follow Manual Setup below for your Revit version.
Manual Setup
1. Build the MCP Server
AI clients launch:
2. Build the Revit Add-in
Choose the configuration that matches your Revit version:
Expected output:
Example for Revit 2024:
3. Deploy the Add-in
Recommended:
The script copies every DLL in the build output (13 for R22-R24, 8 for R25-R26 — both are correct), checks the build generation matches the target Revit before copying, verifies each file by SHA256 afterwards, and rotates old backups.
For manual deployment, place the .addin file and DLL under the matching Revit Addins directory, and keep the relative assembly path in RevitMCP.addin:
Do not create version-specific .addin files, and do not hardcode absolute DLL paths.
AI Client Configuration
Project-level .mcp.json:
VS Code config in .vscode/mcp.json:
Other AI clients use the same concept: launch MCP-Server/build/index.js with node.
Config template per client:
Replace <YOUR_PROJECT_PATH> in the templates with the actual project path on your machine.
Switching Between AI Clients
The Revit-side WebSocket service holds an exclusive lock: only one AI client can be connected at a time. A second client that tries to connect is cleanly rejected (HTTP 409), not swapped in — the first connection stays stable. Multiple AI clients are therefore used by switching, not concurrently:
Before that lock check even runs, any handshake carrying a browser Origin header is rejected outright with HTTP 403. This closes a separate risk: a malicious page open in your browser could otherwise drive the add-in without your knowledge, since WebSocket handshakes aren't covered by the browser's same-origin policy. It has no settings opt-out and does not affect the MCP bridge, which never sends an Origin header.
- In the Revit ribbon, click the "切換/釋放連線" (Switch/Release Connection) button to release the current connection.
- Start or reconnect the other AI client; once its MCP server connects to
localhost:8964, it takes the lock. - The "MCP 設定" dialog shows which client currently holds the connection (e.g.
claude-code,claude-ai). - If the connection misbehaves, use the same ribbon button, or restart the MCP service from the Revit ribbon to reset it.
Startup Flow
- Start Revit.
- Open or create a Revit project.
- Enable the MCP service from the Revit ribbon.
- Confirm the Revit add-in is listening on
localhost:8964. - Start or restart the AI client so it loads the MCP server.
- Call Revit MCP tools from the AI client.
If localhost:8964 is unreachable, Revit may not be running, the MCP service may be off, the port may be occupied, or the AI client and Revit add-in may be using different port settings.
Project Structure
AI Docs and Human Docs
See docs/DOCUMENT_AUDIENCE_INVENTORY.md.
Domain, Skill, and Tool Responsibilities
domain/*.md: BIM SOPs, regulatory logic, and calculation methods. Shared by humans and AI..claude/skills/*/SKILL.md: AI workflow orchestration.MCP-Server/src/tools/*.ts: MCP tool definitions and input schemas.MCP/Core/Commands/*.cs: Revit API implementation.
If a Domain file and a Skill disagree on method, the Domain file wins.
QA/QC
After documentation, tool, Domain, Skill, build, or deployment changes, run:
Before deployment, run a full check:
QA/QC checks:
- forbidden legacy files and paths
- required file structure
- README / CLAUDE / docs count alignment
- Domain table forward and reverse coverage
- local Markdown link rot
- Domain frontmatter
- document audience classification
- mojibake risk in canonical docs
Troubleshooting
AI cannot find Revit tools
Check:
npm run buildhas been run inMCP-Server.- The AI client's MCP config points to the correct
MCP-Server/build/index.js. - The AI client has been restarted or has reloaded MCP servers.
MCP Server cannot connect to Revit
Check:
- Revit is running.
- The MCP service is enabled in the Revit ribbon.
localhost:8964is not occupied.- If HTTP.sys / PID 4 is holding the port, try:
Revit does not show the MCP Tools panel
Confirm the .addin file and DLL were deployed under the matching %APPDATA%\Autodesk\Revit\Addins\{version} directory, then restart Revit.
Important Rules
- Keep one
MCP/RevitMCP.csproj. - Keep one
MCP/RevitMCP.addin. - Do not create version-specific
.csprojor.addinfiles. - Do not create nested
MCP/MCP/directories. - Do not change
.addin<Assembly>to an absolute path. - Do not convert Domain files to English-only.
- Do not bypass the MCP server with hand-written WebSocket JSON.
- For live Revit view, level, selection, or document state, AI must query live state in the current turn.
Document Navigation
License
MIT License
Source: README.md at commit 93365e7
Tools
0Version history
1- v1.6.0LatestSep 16, 2026
Score
40% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts
Declare a license in the repository or the registry entry.