Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
คำอธิบายจากผู้ทำ (ภาษาอังกฤษตามต้นฉบับ)
MCP gateway for Autodesk Revit 2022-2027 - toolset gating + Transaction-safe batch execution.
สามเรื่องนี้ไม่รวมเป็นคะแนนเดียว เพราะความเห็น การวัด และความนิยม เป็นคนละเรื่องกัน
ตัวนี้ยังไม่ได้เรียบเรียงเป็นภาษาไทย ด้านล่างคือข้อเท็จจริงที่เราอ่านจาก registry
เลือกโปรแกรม AI ที่คุณใช้ แล้วคัดลอกค่าตั้งไปวาง
คุณใช้แอปไหน
เลือกแอปด้านบน เราจำไว้ให้ ครั้งหน้าปุ่มจะขึ้นว่า “ติดตั้งลง …”
เปิด Claude Desktop → Settings → Developer → Edit Config แล้ววางค่านี้ในไฟล์ claude_desktop_config.json
{
"mcpServers": {
"rvt": {
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}พิมพ์คำสั่งนี้ใน Terminal
claude mcp add rvt -- dnx RvtMcp.Server --yesวางในไฟล์ .cursor/mcp.json ของโปรเจกต์ หรือ ~/.cursor/mcp.json
{
"mcpServers": {
"rvt": {
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
วางในไฟล์ .vscode/mcp.json ของโปรเจกต์
{
"servers": {
"rvt": {
"type": "stdio",
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}เบราว์เซอร์จะถามก่อนเปิดแอป จากนั้นแอปแสดงค่าตั้งให้ตรวจแล้วกดยืนยัน ช่อง key เว้นว่างไว้ให้คุณใส่เอง
ตัวนี้รันในเครื่องคุณ แต่ ChatGPT ต่อได้เฉพาะ server บนอินเทอร์เน็ต ลองเลือกแอปอื่น
ตัวเลือกเก็บในคุกกี้บนเครื่องนี้ ไม่ต้องมีบัญชี
ค่าตั้งนี้สร้างจากข้อมูลใน registry ของผู้ทำ ถ้าไม่ตรงกับ README ให้เชื่อ README
รันในเครื่องคุณ รายการเครื่องมือจะขึ้นในแอป AI หลังติดตั้ง
เราตรวจจากข้อมูลที่ใครก็เปิดดูได้ ยังไม่ได้อ่านโค้ด ข้อที่ไม่เกี่ยวกับตัวนี้ไม่นับในตัวหาร · ตรวจเมื่อ 6 พ.ย. 2569
ชื่อใน registry ยืนยันด้วยบัญชี GitHub bimwright ซึ่งเป็นเจ้าของ repo
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ยังไม่ได้อ่านข้อมูล repo จาก GitHub
ตัวนี้รันบนเครื่องคุณ ไม่มี endpoint บนอินเทอร์เน็ต
ตัวนี้รันบนเครื่อง ใช้ค่าที่ตั้งในเครื่องแทน
รันในเครื่องคุณ เราอ่านรายการเครื่องมือได้เฉพาะตัวที่มี endpoint บนอินเทอร์เน็ต
เทียบกับทุก server ที่ยังใช้งานในหมวดนี้ทั้งทะเบียน ดาวนับเฉพาะเมื่อผู้ลงทะเบียนเป็นเจ้าของ repo
จากการตรวจเบื้องต้นของเรา ผ่าน 1 จาก 1 ข้อที่ตรวจได้ เรายังไม่ได้อ่านโค้ด ก่อนใส่กุญแจหรือ token ให้ดูว่า server ขอสิทธิ์อะไร และเลือกกุญแจที่ทำได้เท่าที่จำเป็น
registry ไม่ได้ระบุว่าต้องใช้กุญแจ แต่บางตัวจะขอให้ล็อกอินตอนใช้ครั้งแรก
รันบนเครื่องของคุณ โปรแกรม AI จะเปิด server ขึ้นมาเองเมื่อใช้ ข้อมูลไม่ต้องผ่านเซิร์ฟเวอร์ของผู้ทำ (ยกเว้นตัวที่ไปเรียกบริการออนไลน์ต่อ)
repo บน GitHub มีการแก้โค้ดล่าสุด – และส่งรุ่นล่าสุด (1.2.0) เข้า registry 19 วันที่ผ่านมา
โปรแกรมที่รองรับ MCP เช่น Claude Desktop, Claude Code, Cursor และ VS Code ตัวนี้ต้องมี .NET ในเครื่องด้วย
ในหมวดเดียวกันมี Spec Driven Development, Remote Desktop Commander, Recta
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.
Cheaper cross-chain stablecoin routes for AI agents; 5 % of the verified saving, nothing if none.
ส่วนนี้คัดจาก repo ของผู้ทำตามต้นฉบับ PopNx MCP ไม่ได้ตรวจหรือรับรองเนื้อหา ตัด HTML รูปภาพ และสคริปต์ออกแล้ว ลิงก์จะพาออกนอกเว็บ
Current version: v1.2.2. See release notes.
rvt-mcp
MCP gateway for Autodesk Revit — local tools for agents, optional personal bake loop
English · Tiếng Việt · 简体中文 · 日本語
An early all-C# MCP implementation for Revit — researched and implemented since March 2026.
rvt-mcp is a local bridge between an MCP client and a running Revit session. A .NET 8 server talks MCP over stdio; a thin add-in per Revit year (2022–2027) runs inside Revit and is reached over localhost TCP (≤2024) or a named pipe (≥2025). Nothing leaves the machine, it is C# end to end, and lengths are millimetres at the tool boundary. Details: ARCHITECTURE.md.
Agents get a typed tool surface for common Revit work, a C# escape hatch for everything else, and an optional way to turn repeated patterns into personal tools (ToolBaker): start from a shared runtime and grow *your* tools on top. Family Editor authoring is out of scope for now.
v1.2.2: Setup and Claude Desktop MCPB. The release also includes a server-only NuGet package; publication to NuGet.org and MCP Registry is separate. Earlier coverage remains in the v1.2.0 validation record.
Let an AI agent install it for your target client. Use an agent that can run PowerShell and edit local files on this Windows machine (Claude Code, Codex, Cursor, …), not a chat session without local tools. The agent installing it can be different from the client where you will use Revit tools. It follows AGENTS.md, previews changes and asks before applying them; you may still need to approve a UI step or restart an app.
For Claude Desktop, paste:
Install rvt-mcp for Claude Desktop on this Windows machine.
First read https://github.com/bimwright/rvt-mcp/blob/master/AGENTS.md. Configure only Claude Desktop, not other clients. Inspect existing installations, preview changes and ask before writing. Tell me if I need to use the UI or restart an app.
For another client, replace Claude Desktop with its name. Claude Code and Claude Desktop are different targets: installer option claude means Code; claude-desktop means Desktop.
Or run the installer yourself (Claude Desktop, direct config). Close Revit and fully quit Claude Desktop (including its tray process), then in PowerShell:
$tag = (Invoke-RestMethod https://api.github.com/repos/bimwright/rvt-mcp/releases/latest).tag_name
$dir = "$env:TEMP\RvtMcp.Setup-$tag-win-x64" Invoke-WebRequest "https://github.com/bimwright/rvt-mcp/releases/download/$tag/RvtMcp.Setup-$tag-win-x64.zip" -OutFile "$dir.zip" Expand-Archive "$dir.zip" -DestinationPath $dir -Force powershell -ExecutionPolicy Bypass -File "$dir\install.ps1" -WhatIf -Client claude-desktop
powershell -ExecutionPolicy Bypass -File "$dir\install.ps1" -Client claude-desktop
This installs the add-in for every detected Revit 2022–2027 and registers rvt-mcp only in Claude Desktop (the config is backed up first). For Claude Code use -Client claude; for multiple requested clients use a comma list. Omitting -Client wires every detected client; -Client none leaves configs untouched. The server lives at %LOCALAPPDATA%\Bimwright\rvt-mcp\server\current\rvt-mcp.exe (per-client steps, including Desktop classic/MSIX paths).
Check it works: restart your AI client, open a model in Revit, start MCP from the ribbon (Add-Ins → RvtMcp) and ask the agent to call revit_get_current_view_info. It should return the active view's name and type.
Upgrade: close Revit and gateway clients, back up the product data folder, then run the new installer in place without uninstalling first. Settings and ToolBaker data are kept. MCPB users use -Client none, update Setup and extension from the same release, then check Desktop settings and permissions before reconnecting. See the upgrade sequence. Uninstall: uninstall.ps1 -Yes removes add-ins and the server; personal data is kept unless you add -Purge. To remove client entries too, first run install.ps1 -Uninstall -Client auto.
Upgrading from v0.8.1 or v0.6.x: those versions keep your settings and ToolBaker data in %LOCALAPPDATA%\RvtMcp\; v1.0.0 uses %LOCALAPPDATA%\Bimwright\rvt-mcp\, and the installer moves the old folder there. Close Revit and every MCP client first, because a running old server locks the folder. Check in PowerShell with Test-Path "$env:LOCALAPPDATA\RvtMcp". If the installer stops with Both … exist or Could not move …, it has undone what it moved: keep the folder that holds your settings and ToolBaker data, rename the other one (for example to `RvtMcp.bak`) instead of deleting it, close the clients that were using it, and run the installer again.
Claude Desktop extension (MCPB, optional): direct config above is the default for agent-assisted installs. If you want the extension/settings UI, use Setup with -Client none, then install the .mcpb through Desktop's extension UI. Choose one route, not both. -Client none does not remove an existing manual registration. Use the bundle from the same selected release as Setup; it does not install the gateway/add-ins and requires that release's exact server build. Check the release notes for its signing status. See MCPB installation and settings.
Community videos of rvt-mcp at work. Install steps shown in a video can be older than this README — follow the steps above.
Counts below describe the current development source. The v1.2.2 release has 242 tools with all, 245 with adaptive bake and 55 bare defaults.
| Mode | Tools | Notes |
|---|---|---|
| Fresh install | 253 | install.ps1 seeds "toolsets": ["all"] in rvtmcp.config.json |
Bare rvt-mcp.exe | 59 | query + create + view + meta |
--toolsets all | 253 | Full catalog |
all + adaptive bake | 256 | Adds 3 suggestion-lifecycle tools |
Counts exclude your personal baked tools. The installer writes the seeded default only when rvtmcp.config.json doesn't already set toolsets — your own list survives upgrades, and removing the key (or setting your own CSV) returns a bare server to the 59-tool surface. Read-only filters individual tools by ReadOnly=true, including reads inside mixed toolsets. Tools that can write files are excluded even when their default output is inline; agent reports are allowed because they only write per-user report data.
| Toolset | What it covers |
|---|---|
query | View, selection, filters, stats, parameters, relationships, worksets, groups/assemblies |
create | Grids, levels, rooms, line/point/surface-based elements, groups |
view | Create views, sheets layout helpers, capture image, crop/scale |
meta | Document state, batch execute (max 20), multi-Revit targets, recent models, project info, purge unused (MVP), message, send_code, agent reports, local failure records and operation status |
documents | Opt-in save and checkpoint management for local models and families; local save for workshared models. See document lifecycle. |
lint | View naming patterns, firm-profile detect, warnings summary |
schedule | List/create schedules, fields, formulas, data |
families | Load/unload, types, instances, audit, export .rfa (project-side) |
modify | Operate/color elements, set parameters, change type, workset assign |
delete | Delete by id |
annotation | Tags, text, dimensions, regions, keynotes, checks |
export | PDF/DWG/IFC/NWC helpers, room data, and related export tools |
mep | Systems, connectors, networks, place terminals/fixtures, etc. |
graphics | View filters, overrides, visibility/phase |
toolbaker | list/run baked tools; suggestion tools only if adaptive on |
sheets | Sheets, titleblocks, revisions, renumber, viewport layout |
materials | Materials, appearance, assignment, takeoff |
geometry | BBox, measure, clash, volume/area, … |
rooms | Rooms/areas/spaces, finishes, separators |
links | Revit/CAD links, coordinate audit, acquire/publish coordinates |
parameters | Project/shared parameters |
organization | Saved selections, view templates |
workflows | Composite clash/audit/sheet/takeoff-style flows |
structural | Columns, beams, foundations, rebar, loads, … |
At session start, select the intended Revit instance if needed, then call revit_health(). It stays offline by default and works with --read-only and no open model. revit_health(check_updates=true) explicitly compares the loaded gateway and add-in against one official stable release; missing evidence remains unknown. Follow update_guidance; only prepare_update with bundle_update_proposal_allowed=true permits an update proposal. Health never installs, closes models or restarts processes. It can reply while Revit is modal. Document fields are the last UI observation, dated by document_observed_utc, and do not confirm the current document or readiness for writes. After reconnect, compare fresh initialize.serverInfo and the health tool runtime metadata/schema/annotations in tools/list with client_verification; the server cannot observe client cache refresh.
A call missing a required parameter does not run. It returns INVALID_ARGUMENT with invalid_arguments (missing, unknown with did_you_mean, received, expected). Parameter names are case-sensitive, and some tools use snake_case while others use camelCase: follow did_you_mean. A key that is not a parameter does not stop the call. It is ignored, and the result lists it under _ignored_arguments. A value that cannot be converted still returns An error occurred invoking ' '., with the exact cause in the server's stderr.
data for JSON inputs, modules for reusable helpers, compile_only to validate without execution, and result_contract="task_v1" with `McpTaskResultตัดมาแค่ช่วงต้น อ่านต่อใน repo