`invoke_method`, `reflect_get`, `reflect_set` and `execute_python` reach any public .NET member and run with the same permissions as the Revit process itself — powerful for work the catalog does not cover, and the reason the project tells you to keep the bridge on localhost and only connect clients and prompts you trust. Check the platform status before planning around a provider: Revit, Rhino, IfcOpenShell and Speckle are available, while Navisworks and Power BI are routed but not yet registered in the shipped hub.
A Python hub that speaks MCP to your client and routes each call to whichever application the task needs: a native C# add-in inside Revit, the Rhino bridge add-in over local HTTP, headless IfcOpenShell parsing, or Speckle for model hand-off.
- 100+ typed tools covering model authoring, documentation, parameters, views, sheets, exports and QA
- Revit through a native add-in that executes on the main thread, with no Dynamo or pyRevit dependency
- Rhino and Grasshopper over the Rhino bridge add-in, IFC semantic extraction through IfcOpenShell, and model push to Speckle
- Escape hatches for work outside the tool catalog: `invoke_method`, `reflect_get`, `reflect_set`, and `execute_python` for IronPython inside Revit
- Async job orchestration and centralised PII redaction
- A mock mode that runs the server and its tests with no Revit installed
Windows 10 or 11, Python 3.11 or later, and a licensed Revit — 2024 through 2027, each needing the matching .NET SDK to build the add-in. Install the Python server into a virtual environment, then package and install the add-in for your Revit year. The client config sets `MCP_REVIT_MODE`, `MCP_REVIT_BRIDGE_URL`, `MCP_REVIT_WORKSPACE_DIR` and `MCP_REVIT_ALLOWED_DIRECTORIES`. The bridge listens on localhost only by default.
