Get the FREE Ultimate OpenClaw Setup Guide →

RevitMCP

model context protocol for Autodesk Revit

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio oakplank-revitmcp python C:\Program Files\pyRevit-Master\extensions\RevitMCP.extension\lib\RevitMCP_ExternalServer\server.py --surface mcp

How to use

RevitMCP exposes an HTTP API inside Revit via pyRevit Routes, allowing external applications (such as AI assistants) to call into a running Revit instance. An external intermediary server (server.py) sits outside Revit and forwards requests to the pyRevit Routes endpoints hosted inside Revit. The typical workflow is: your external client sends a request to the external server, the server translates and forwards it to Revit’s API (for example http://localhost:48884/revit-mcp-v1/...), the Revit API executes the requested operation (like selecting elements, retrieving project information, or placing views on sheets), and the response is sent back through the intermediary server to your client. The server.py component supports a web UI (default web surface) for interactive chat and a Claude Desktop MCP mode (mcp surface) for direct MCP tooling. The latest sheet placement feature allows you to issue natural language like “Place detail foundation onto a sheet” and the system will locate the relevant view, create or reuse a sheet with appropriate numbering, and center the viewport on the sheet.

How to install

Prerequisites:

  • Autodesk Revit installed and a compatible version.
  • pyRevit installed and configured in Revit.
  • Python installed (for the external server script).

Installation steps:

  1. Install pyRevit:

  2. Install the RevitMCP.extension:

    • Locate your pyRevit extensions folder (e.g., %APPDATA%/pyRevit/Extensions or %PROGRAMDATA%/pyRevit/Extensions).
    • Copy the RevitMCP.extension folder (containing startup.py and lib/) into one of the extensions directories.
  3. Run the external server (server.py):

    • Ensure Python is installed and available on PATH.

    • Start the external server in MCP mode or web mode as needed:

      Example (MCP surface): python "C:\Program Files\pyRevit-Master\extensions\RevitMCP.extension\lib\RevitMCP_ExternalServer\server.py" --surface mcp

    • The server will launch and listen on the configured port (default 8000 for the external server) and route requests to the Revit pyRevit Routes API (e.g., http://localhost:48884/revit-mcp-v1/...).

  4. Optional: Configure Claude Desktop integration (if using Claude):

    • Add an entry pointing to the same server script with --surface mcp in Claude Desktop config, as described in the README.
  5. Verify:

    • Open the external server UI (if using web surface) at http://127.0.0.1:8000 and test a few endpoints.
    • Ensure Revit is running with the RevitMCP.extension loaded and the Routes server enabled in pyRevit settings.

Additional notes

Tips and common issues:

  • Ensure Revit’s pyRevit Routes server port (default 48884) is accessible from the external server. Firewall rules may need adjustment.
  • If you change the Revit port or instance, update the external server configuration accordingly.
  • The web surface is the default for interactive use; switch to the mcp surface for Claude Desktop MCP workflows.
  • When troubleshooting, check Revit pyRevit logs for startup.py endpoint messages to confirm the endpoints are registered.
  • The sheet placement feature relies on fuzzy matching for view names and automatic sheet numbering (D001, S001, etc.). Ensure views exist or are named predictably.

Related MCP Servers

Sponsor this space

Reach thousands of developers