Spec Driven Development
MCP Server that facilitates spec-driven development workflows, not just Vibe Coding.
Description from the maker (original English)
MCP gateway for Autodesk Revit 2022-2027 - toolset gating + Transaction-safe batch execution.
These three are never merged into one score: opinions, measurements and popularity are different things.
We have not written a plain-language summary for this one yet. Below are the facts we read from the registry.
Pick the AI app you use, then copy the settings.
Which app do you use?
Pick your app above. We remember it, so next time the button says “Install in …”.
Open Claude Desktop → Settings → Developer → Edit Config, and paste this into claude_desktop_config.json
{
"mcpServers": {
"rvt": {
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}Run this in your terminal
claude mcp add rvt -- dnx RvtMcp.Server --yesPaste into .cursor/mcp.json in your project, or ~/.cursor/mcp.json
{
"mcpServers": {
"rvt": {
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
Paste into .vscode/mcp.json in your project
{
"servers": {
"rvt": {
"type": "stdio",
"command": "dnx",
"args": [
"RvtMcp.Server",
"--yes"
]
}
}
}Your browser asks to open the app, then the app shows the settings and asks you to confirm. Key values are left empty for you to fill in.
This one runs on your computer, and ChatGPT can only connect to servers on the internet. Pick another app.
Your choice stays on this device in a cookie; no account needed.
These settings are generated from the maker’s registry entry. If the README says otherwise, follow the README.
Runs on your computer; the tool list appears in your AI app after you install it.
We check information anyone can see; we have not read the code. Checks that do not apply are left out of the count. · Checked Nov 7, 2026
The registry name was verified with the GitHub account bimwright, which owns the repo
We have not read this repo from GitHub yet
We have not read this repo from GitHub yet
This one runs on your computer; there is no internet endpoint
Runs on your computer and uses local settings instead
Runs on your computer; we can only read tool lists from internet endpoints
Compared with every active server in this category in the registry. Stars count only when the publisher owns the repo.
It passed 1 of 1 applicable basic checks. We have not read the code. Before adding a key or token, see what access the server asks for and use a key with only the permissions you need.
The registry does not list a required key, though some servers ask you to sign in on first use.
It runs on your computer. Your AI app starts it when needed, and data does not pass through the maker’s servers (unless it calls an online service itself).
The GitHub repo last changed –, and the latest version (1.2.0) reached the registry 19 days ago.
Apps that support MCP, such as Claude Desktop, Claude Code, Cursor and VS Code. You also need .NET on your computer.
In the same category: Spec Driven Development, Remote Desktop Commander, AvaHR
Servers in the same category from other makers, sorted by stars.
Reading a card:★ GitHub starsiThree pillars: reviews · checks · usageiUpdated = latest version published to the 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.
Read hiring data and create inactive assessment and questionnaire drafts for human review.
Copied from the maker’s repo as written. PopNx MCP has not reviewed or endorsed it. HTML, images and scripts are removed. Links lead off this site.
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 `McpTaskResultOnly the beginning is shown; read the rest in the repo