Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
作者提供的说明(英文原文)
MCP Server for Revit integration - AI-Powered Revit Control
这三项永远不会合并成一个分数:意见、测量和人气是不同的东西。
我们还没有为它写通俗的介绍。下面是我们从注册中心读取到的事实。
选择你使用的 AI 应用,然后复制设置。
你需要
你用的是哪个应用?
在上方选择你的应用。我们会记住它,下次按钮会显示“安装到 …”。
打开 Claude Desktop → Settings → Developer → Edit Config,把下面的内容粘贴到 claude_desktop_config.json
{
"mcpServers": {
"revit": {
"command": "npx",
"args": [
"-y",
"@shuotao/revit-mcp-server"
]
}
}
}在终端中运行这条命令
claude mcp add revit -- npx -y @shuotao/revit-mcp-server粘贴到项目中的 .cursor/mcp.json,或 ~/.cursor/mcp.json
{
"mcpServers": {
"revit": {
"command": "npx",
"args": [
"-y",
"@shuotao/revit-mcp-server"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
粘贴到项目中的 .vscode/mcp.json
{
"servers": {
"revit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@shuotao/revit-mcp-server"
]
}
}
}浏览器会先询问是否打开应用,然后应用会显示设置并请你确认。密钥的值会留空,由你自己填写。
这个服务器在你的电脑上运行,而 ChatGPT 只能连接互联网上的服务器。请选择其他应用。
你的选择通过 Cookie 保存在这台设备上,无需账户。
这些设置是根据作者在注册中心的条目生成的。如果 README 的写法不同,请以 README 为准。
它在你的电脑上运行;安装后,工具列表会显示在你的 AI 应用中。
我们检查的是任何人都能看到的信息;我们没有阅读代码。不适用的检查项不计入总数。 · 检查于 2026年11月8日
注册名称已通过 GitHub 账户 shuotao 验证,该账户拥有此仓库
我们还没有从 GitHub 读取这个仓库
我们还没有从 GitHub 读取这个仓库
它在你的电脑上运行,没有互联网端点
在你的电脑上运行,改用本地设置
它在你的电脑上运行;我们只能读取互联网端点的工具列表
与注册中心里这个分类中所有活跃的服务器比较。只有当发布者拥有该仓库时,星标数才计入。
它在 1 项适用的基础检查中通过了 1 项。我们没有阅读代码。在添加密钥或令牌之前,请先看看这个服务器要求哪些权限,并使用只具备所需权限的密钥。
注册中心没有列出必需的密钥,不过有些服务器会在首次使用时要求你登录。
它在你的电脑上运行。你的 AI 应用会在需要时启动它,数据不会经过作者的服务器(除非它自己调用在线服务)。
GitHub 仓库最后更新于–,最新版本(1.6.0)于3个月前进入注册中心。
支持 MCP 的应用,例如 Claude Desktop、Claude Code、Cursor 和 VS Code。你的电脑上还需要有 Node.js。
同一分类中有:Spec Driven Development, Remote Desktop Commander, MIDAS Gen NX / Civil NX
同一分类中其他作者的服务器,按星标数排序。
如何看卡片:↓ 每周下载量i★ GitHub 星标i三大支柱:评价 · 检查 · 使用情况i更新 = 最新版本发布到注册中心的时间i
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Remote Desktop Commander: use files, terminal and processes on your own computers from any AI app.
Read and carefully change the model open in MIDAS Gen NX or Civil NX on this PC.
按原文从作者的仓库复制。PopNx MCP 没有审查或背书其内容。HTML、图片和脚本已被移除。链接会离开本站。
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.
8964Talk 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.
{ "mcpServers": { "revit-mcp": { "command": "npx", "args": ["-y", "@shuotao/revit-mcp-server"] } } }
Questions or want to show what you built? → [Discussions](https://github.com/shuotao/REVIT_MCP_study/discussions)
| Item | Count | Source |
|---|---|---|
| Runtime MCP tools | 239 | registerRevitTools() in MCP-Server/src/tools/index.ts |
| Domain SOP files | 94 | domain/*.md except README.md, plus domain/references/*.md |
| Claude skills | 61 | .claude/skills/*/SKILL.md |
When these numbers change, update CLAUDE.md, README.zh-TW.md, this file, docs/DOCUMENT_AUDIENCE_INVENTORY.md, and run:
.\scripts\verify-qaqc.ps1 -SkipBuild -SkipDeploy
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:
detect_clashes's normal text result — nothing changes for them.See docs/MIGRATION_GUIDE.md for the full MCP 2026-07-28 upgrade notes.
AI Client
Claude Desktop / Claude Code / Gemini CLI / VS Code Copilot / Antigravity | | stdio v MCP Server Node.js / TypeScript MCP-Server/build/index.js | | WebSocket ws://localhost:8964 v Revit Add-in C# / Revit API MCP/Application.cs MCP/Core/SocketService.cs MCP/Core/ExternalEventManager.cs | v Autodesk Revit
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.
| Item | Requirement |
|---|---|
| OS | Windows 10 or later |
| Revit | Autodesk Revit 2022, 2023, 2024, 2025, 2026 |
| .NET | .NET Framework 4.8 for Revit 2022-2024; .NET 8 for Revit 2025-2026 |
| Node.js | LTS, preferably 20.x or later |
Recommended for new users:
.\scripts\setup.ps1
For AI agents or non-interactive setup:
powershell -ExecutionPolicy Bypass -File scripts/setup.ps1 -NonInteractive -RevitVersions "2024,2025"
The setup script checks prerequisites, installs dependencies, builds the MCP server, builds and deploys the Revit add-in, and helps configure common AI clients.
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:
npx -y @shuotao/revit-mcp-server
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.
cd MCP-Server
npm install npm run build
AI clients launch:
node MCP-Server/build/index.js
Choose the configuration that matches your Revit version:
cd MCP
dotnet build -c Release.R22 RevitMCP.csproj # Revit 2022 dotnet build -c Release.R23 RevitMCP.csproj # Revit 2023 dotnet build -c Release.R24 RevitMCP.csproj # Revit 2024 dotnet build -c Release.R25 RevitMCP.csproj # Revit 2025 dotnet build -c Release.R26 RevitMCP.csproj # Revit 2026
Expected output:
MCP/bin/Release.R{YY}/RevitMCP.dll
Example for Revit 2024:
MCP/bin/Release.R24/RevitMCP.dll
Recommended:
# Pick the Revit version explicitly. With several installed and no -Version, the script asks;
.\scripts\install-addon.ps1 -Version 2024
.\scripts\install-addon.ps1 -All
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:
<Assembly>RevitMCP\RevitMCP.dll</Assembly>
Do not create version-specific .addin files, and do not hardcode absolute DLL paths.
Project-level .mcp.json:
{
"mcpServers": { "revit-mcp": { "type": "stdio", "command": "node", "args": ["./MCP-Server/build/index.js"], "env": {} } } }
VS Code config in .vscode/mcp.json:
{
"servers": { "revit-mcp": { "type": "stdio", "command": "node", "args": ["${workspaceFolder}/MCP-Server/build/index.js"], "env": {} } } }
Other AI clients use the same concept: launch MCP-Server/build/index.js with node.
Config template per client:
| AI Client | Config location | Template |
|---|---|---|
| Claude Code | project root .mcp.json | built in, works out of the box |
| Claude Desktop | %APPDATA%\Claude\claude_desktop_config.json | MCP-Server/claude_desktop_config.json |
| Gemini CLI | ~/.gemini/settings.json | MCP-Server/gemini_mcp_config.json |
| VS Code Copilot | .vscode/mcp.json | built in |
| Antigravity | UI settings | Antigravity_MCP_Complete_Guide.md |
Replace in the templates with the actual project path on your machine.
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.
localhost:8964, it takes the lock.claude-code, claude-ai).localhost:8964.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.
REVIT_MCP/
MCP/ Revit Add-in (C#) Application.cs Revit add-in entry point RevitMCP.csproj Single multi-version project RevitMCP.addin Single add-in manifest Core/ SocketService.cs Revit-side WebSocket server ExternalEventManager.cs UI-thread execution bridge RevitCompatibility.cs Revit 2022-2026 compatibility helpers CommandExecutor.cs Main command dispatcher Commands/*.cs Command modules MCP-Server/ MCP Server (Node.js / TypeScript) src/index.ts stdio MCP server entry src/socket.ts WebSocket client to Revit src/tools/*.ts MCP tool definitions domain/ Shared BIM SOPs; do not convert to English-only .claude/ AI commands and skills docs/ Human-facing docs and public knowledge site scripts/ Setup, deployment, QA/QC scripts log/ Append-only session and commit logs
| Type | Location | Rule |
|---|---|---|
| AI-only | CLAUDE.md, .claude/commands/, .claude/skills/ | English-first to avoid mojibake |
| Human-facing | README.md, README.zh-TW.md, docs/, scripts/README.md | Match the reader's language |
| Shared | domain/*.md, log/README.md | Domain files must remain Chinese-readable and must not become English-only |
| Historical | docs/_archive/**, old logs | Preserve by default |
See docs/DOCUMENT_AUDIENCE_INVENTORY.md.
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.
After documentation, tool, Domain, Skill, build, or deployment changes, run:
.\scripts\verify-qaqc.ps1 -SkipBuild -SkipDeploy
Before deployment, run a full check:
.\scripts\verify-qaqc.ps1 -Version 2024
QA/QC checks:
Check:
只显示了开头部分;其余内容请在仓库中阅读