Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP Server for Revit integration - AI-Powered Revit Control
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
ต้องเตรียมก่อน
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"revit": {
"command": "npx",
"args": [
"-y",
"@shuotao/revit-mcp-server"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
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"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"revit": {
"type": "stdio",
"command": "npx",
"args": [
"-y",
"@shuotao/revit-mcp-server"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 7 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub shuotao ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.6.0) เข้า registry 3 เดือนที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี Node.js ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Signoff
server หมวดเดียวกันจากผู้ทำคนอื่น เรียงตามดาว
อ่านการ์ด:★ ดาว GitHubiสามเสา: รีวิว · ผลตรวจ · การใช้งานiอัปเดต = วันที่ส่งรุ่นล่าสุดเข้า registryi
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.
Five gates that make an agent's 'done' provable: run them, read the verdict, audit the record.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ 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:
ตัดมาแค่ช่วงต้น อ่านต่อใน repo