RevitMCP

AchyErrorJ/RevitMCP
0 starsCommunity

Install to Claude Code

This server doesn't publish a one-line install command. Follow the setup in the source repository.

Summary

Enables natural language control of Autodesk Revit through an AI-powered MCP server, allowing creation of walls, rooms, floor plans, and dimensions using conversational commands.

README.md

RevitMCP

Natural language control of Autodesk Revit through an AI-powered MCP (Model Context Protocol) server. Create walls, rooms, floor plans, dimensions, and more using conversational commands.

Architecture

 Revit 2024/2025/2026
       |
 C# Add-in (RevitMCP_core)     <-- Revit API bridge on port 48884
       |
 Python MCP Server (FastAPI)    <-- AI orchestrator on port 8001
       |
 AI Provider (Hugging Face / Claude / Gemini / LM Studio)
         ↑
    Auto-fallback chain:
    1. Hugging Face Inference API (primary)
    2. LM Studio (local fallback)
    3. Claude/Gemini (cloud fallback)

RevitMCP_core is a Revit add-in that exposes the Revit API over HTTP. The Python server receives natural language queries, detects intent via templates and workflow chains, builds execution plans, and sends commands to Revit through the add-in.

The new Adaptive Orchestrator supports multiple LLM providers with automatic fallback:

  • Hugging Face (primary): Fast inference, 500k+ models, native tool calling
  • LM Studio (fallback): Local models, privacy, offline capable
  • Claude/Gemini (fallback): Cloud providers, high capability

RevitMCP_core is a Revit add-in that exposes the Revit API over HTTP. The Python server receives natural language queries, detects intent via templates and workflow chains, builds execution plans, and sends commands to Revit through the add-in.

Prerequisites

  • Windows 10/11
  • Autodesk Revit 2024, 2025, or 2026
  • Python 3.10 - 3.12 (PyTorch compatibility)
  • .NET SDK 8.0+ (to build the C# add-in)
  • One of: Hugging Face token (recommended), Claude API key, Google Gemini API key, or LM Studio running locally

Quick Install

Option A: Automated (Recommended)

Run PowerShell as Administrator:

powershell -ExecutionPolicy Bypass -File scripts\install.ps1

Flags:

  • -SkipEnhancer — Skip AI rendering setup (core + brain only)
  • -CPUOnly — No GPU acceleration
  • -AMD — Use DirectML instead of CUDA

Option B: Manual

  1. Build the C# add-in:
   dotnet build RevitMCP_core\RevitMCP_core.csproj -c Release
  1. Create the Revit manifest at %APPDATA%\Autodesk\Revit\Addins\2026\RevitMCP.addin:
   <?xml version="1.0" encoding="utf-8"?>
   <RevitAddIns>
     <AddIn Type="Application">
       <Name>RevitMCP</Name>
       <Assembly>C:\RevitMCP\RevitMCP_core.dll</Assembly>
       <FullClassName>RevitMCP_core.App</FullClassName>
       <ClientId>a1b2c3d4-e5f6-7890-abcd-ef1234567890</ClientId>
       <VendorId>RevitMCP</VendorId>
     </AddIn>
   </RevitAddIns>
  1. Set up Python environment:
   cd server
   python -m venv .venv
   .venv\Scripts\activate
   pip install -r requirements.txt
  1. Configure your AI provider — edit %APPDATA%\RevitMCP\llm_config.json:

Option A: Hugging Face (Recommended - fast, reliable, cost-effective) ``json { "llm_provider": "huggingface", "huggingface": { "api_key_env": "HF_TOKEN", "model": "Qwen/Qwen2.5-72B-Instruct", "provider": "nebius" } } ` Set the environment variable: set HF_TOKEN=hf_your_token` Get your token at huggingface.co/settings/tokens

Option B: Claude ``json { "llm_provider": "claude", "claude": { "api_key_env": "ANTHROPIC_API_KEY" } } ` Set the environment variable: set ANTHROPIC_API_KEY=sk-ant-...`

Option C: LM Studio (Local) ``json { "llm_provider": "lmstudio" } `` Start LM Studio with a model loaded on port 1234.

  1. Start the server:
   cd server
   python server.py
  1. Open Revit — the add-in loads automatically. Click "Start Server" in the RevitMCP settings panel.

Usage

Once running, send natural language commands through the chat UI in Revit:

| Command | What it does | |---------|-------------| | build a 40x30 house | Creates a building shell with exterior walls | | 3 bed 2 bath 35x25 | Generates a full room layout with partitions | | add foundation | Creates foundation walls and footings below grade | | dimension everything | Adds professional 3-tier architectural dimensions | | design a house | Starts an interactive QBD (Question-Based Design) session |

See REFERENCE.md for the full list of 280+ tools and templates.

Configuration

All configuration is via environment variables (with sensible defaults):

| Variable | Default | Description | |----------|---------|-------------| | REVITMCP_REVIT_PORT | 48884 | Port for the Revit C# add-in HTTP server | | REVITMCP_SERVER_PORT | 8001 | Port for the Python FastAPI server | | REVITMCP_LM_STUDIO_PORT | 1234 | Port for LM Studio (if using local models) | | REVITMCP_ENHANCER_PORT | 5000 | Port for the AI rendering server | | REVITMCP_HOST | localhost | Host for all services | | REVITMCP_AUTH_TOKEN | (empty) | Shared secret for server authentication (recommended) | | REVITMCP_CORS_ORIGINS | (empty) | Additional CORS origins (comma-separated) | | HF_TOKEN | — | Hugging Face API token (recommended) | | ANTHROPIC_API_KEY | — | Claude API key | | GOOGLE_API_KEY | — | Google Gemini API key |

Project Structure

RevitMCP/
  RevitMCP_core/          C# Revit add-in
    App.cs                  Plugin entry point
    McpServer.cs            HTTP listener (port 48884)
    RequestHandler.cs       Route dispatcher (150+ routes)
    UI/                     Settings window (XAML)
  server/                 Python MCP server
    server.py               FastAPI entry point (port 8001)
    config.py               Centralized configuration
    client_orchestrator.py  Intent detection and plan execution
    adaptive_orchestrator.py Multi-provider orchestrator (HF/LM/Cloud)
    hf_orchestrator.py      Hugging Face Inference integration
    templates.py            Pre-built workflow templates
    workflow_chains.py      Multi-phase compound workflows
    qbd_session.py          Question-Based Design sessions
    tools/                  280+ Revit API tool implementations
      geometry_tools.py       Walls, floors, roofs
      annotation_tools.py     Dimensions, grids, sheets
      auto_dimensions.py      Professional dimensioning
      physics_tools.py        Structural/thermal analysis
      family_editor_tools.py  Parametric family creation
      ...
    examples/               Usage examples
      hf_example.py           Hugging Face integration demo
    tests/                  Integration test suite
  scripts/                Installation scripts
    install.ps1             Automated installer
    uninstall.ps1           Clean uninstaller
  docs/                   Documentation

Health Check

GET http://localhost:8001/health

Returns server status and Revit connectivity.

Troubleshooting

See TROUBLESHOOTING.md for common issues.

Quick checks:

  1. Is Revit running with the add-in loaded?
  2. Is the server running? (python server.py)
  3. Can you reach http://localhost:8001/health?
  4. Is your AI provider configured? Check %APPDATA%\RevitMCP\llm_config.json

License

Proprietary. All rights reserved.

Related MCP servers

Browse all →