Installation
RevitDevTool installs as an add-in bundle for Revit and AutoCAD-based products. One installer covers every supported host and year.
- Windows 10 or 11
- Autodesk Revit, AutoCAD, Civil 3D or Plant 3D, 2022–2027
- .NET 10 runtime, only if you connect an AI client through MCP
Install
- Download
RevitDevTool-Setup.exefrom the newestdaemon/v...release on GitHub Releases. - Run the installer.
- Start your Autodesk application.
- Open the RevitDevTool (Revit) or DevTools (AutoCAD) panel from the ribbon.
- Revit
- Civil 3D and AutoCAD
On the Add-Ins tab, under External Tools, choose DevTools. StubBuilder and Commands sit beside it.

On the Add-ins tab, under External Tools, choose DevTools. StubBuilder sits beside it.

That's it. The installer registers one add-in bundle per host under %APPDATA%\Autodesk\ApplicationPlugins\: RevitDevTool.bundle for Revit and AcadDevTool.bundle for AutoCAD. Only the hosts you select are downloaded. The Daemon is installed under %LOCALAPPDATA%\RevitDevTool, and installation.json lives in %APPDATA%\RevitDevTool.
Update
The Daemon and the add-in update separately from the Updates tab. Each follows the stable or prerelease channel. Versions 4.0.0-beta.7 and earlier cannot update in place: run RevitDevTool-Setup.exe once, then use the Updates tab. Coming from 3.x? Follow Upgrade from 3.x to 4. See
Release Notes for what changed.
The installer works for the current Windows user only, so it runs without elevation.
Run your first script
Save this file as hello_script.py in an empty folder:
# /// script
# dependencies = ["polars"]
# ///
import polars as pl
from Autodesk.Revit import DB
doc = __revit__.ActiveUIDocument.Document
walls = DB.FilteredElementCollector(doc).OfClass(DB.Wall)
print(pl.DataFrame({"name": [w.Name for w in walls]}))
The # /// script header lists the packages the script needs. They install automatically before the first run, so there is no requirements.txt to maintain.
Then:
- Open the RevitDevTool panel and turn on the Execution toggle.
- Choose Load Scripts, then select the folder.
- Pick the discovered command and run it.
The output appears in the panel's log view. On Revit, traced geometry is also drawn in the active view.
A folder shows up as a command only if it holds an entry file: *script.py (CPython), *_ipy_script.py (IronPython), *script.csx (C#) or *script.fsx (F#). See Execution Overview for what each runtime supports.
Where to go next:
- Attach a debugger
- Python dependencies
- Log output
- Troubleshooting if something does not work
Connect an AI client
Point any MCP v2 client that supports stdio (Cursor, Claude, GitHub Copilot, …) at the MCP server installed with the Daemon:
{
"mcpServers": {
"revitdevtool": {
"type": "stdio",
"command": "%LOCALAPPDATA%/RevitDevTool/current/DevTools.Daemon.exe",
"args": ["--stdio"]
}
}
}
The server finds running hosts automatically. The tools your client gets are listed in MCP Protocol.
Build from source
Contributors can build from source with the SDK pinned in global.json. See Build From Source.