EraCore Revit MCP
Provides tools for interacting with Autodesk Revit BIM models, including reading model metadata, listing elements, creating walls, batch-updating parameters, and exporting schedules.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@EraCore Revit MCPExport the door schedule to CSV"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
EraCore Revit MCP
EraCore Revit MCP is a Model Context Protocol (MCP) server that connects LLM assistants (Cursor, Claude Desktop, and others) to Autodesk Revit BIM models. It exposes typed tools for reading model metadata, listing elements, creating geometry, batch-updating parameters, and exporting schedules.
Built with Hexagonal Architecture, Domain-Driven Design, and a Walking Skeleton delivery approach.
Version | 1.0.0 |
Revit | 2024–2027 (pyRevit bridge tested on 2027) |
Python | 3.12+ |
Platform | Windows (Revit integration); fake mode runs anywhere |
Features
Capability | Fake mode | pyRevit mode |
MCP tools (7) — ping, model info, list/get elements | ✅ | ✅ |
Create walls with Revit transactions | ✅ | ✅ |
Batch parameter updates (≤100 per batch) | ✅ | ✅ |
Export ViewSchedule to CSV | ✅ | ✅ |
Real Revit document read/write via HTTP bridge | — | ✅ |
Unit tests without Revit installed | ✅ | — |
Related MCP server: revit-mcp
Quick Start
Prerequisites
Python 3.12+
Windows 10/11 (required for live Revit integration)
Autodesk Revit 2024+ and pyRevit (optional; fake mode needs neither)
Install
git clone <repository-url> eracore
cd eracore
python -m venv .venv
.\.venv\Scripts\Activate.ps1
pip install -e ".[dev]"
Copy-Item .env.example .envRun the Walking Skeleton (fake mode — no Revit)
# Default: REVIT_MCP_REVIT_ADAPTER_MODE=fake in .env
python -m revit_mcp demoExpected output ends with:
WALKING SKELETON OK — walls: 2 → 3
Report generated: reports/demo_walls.csvRun with real Revit (pyRevit)
# 1. Install pyRevit extension and dependencies
.\scripts\install_revit_deps.ps1
# 2. Start Revit with the bridge
.\scripts\start_revit_with_bridge.ps1
# 3. Open any .rvt model, then set adapter mode
# REVIT_MCP_REVIT_ADAPTER_MODE=pyrevit in .env
python -m revit_mcp demo
python -m revit_mcp mcpSee Revit & pyRevit setup for full instructions.
MCP Tools
Tool | Description |
| Health check — server version and Revit connectivity |
| Project metadata, levels, optional category statistics |
| Filtered, paginated element list |
| Single element with parameters |
| Create a wall between two XYZ points (mm) |
| Bulk parameter updates with per-item error reporting |
| Export a ViewSchedule to CSV |
Full contracts: Software Design Document · MCP server source
CLI Commands
python -m revit_mcp mcp # Start MCP server (stdio transport)
python -m revit_mcp demo # Run end-to-end Walking Skeleton
python -m revit_mcp config # Print active configuration
python -m revit_mcp help # Show helpProject Structure
eracore/
├── src/revit_mcp/ # Python MCP server (hexagonal layers)
│ ├── domain/ # Entities, value objects, ports
│ ├── application/ # Use cases and DTOs
│ ├── adapters/
│ │ ├── primary/mcp/ # MCP inbound adapter
│ │ └── secondary/pyrevit_adapter/ # Revit bridge outbound adapters
│ └── config/ # Settings and DI container
├── pyrevit_extension/ # EraCoreMCP pyRevit extension (HTTP bridge)
├── scripts/ # Install and Revit launch scripts
├── tests/unit/ # Use-case tests (fake adapter)
└── docs/ # Architecture (C4) and guidesConfiguration
Environment variables use the REVIT_MCP_ prefix. Copy .env.example to .env.
Variable | Default | Description |
|
|
|
|
| HTTP bridge host |
|
| HTTP bridge port |
|
| Bridge RPC timeout (increase for slow models) |
|
| Logging level |
Development
# Unit tests (≥70% coverage enforced)
pytest tests/unit -q
# Linting and types
ruff check src tests
ruff format src tests
mypy -p src.revit_mcp
# Architecture boundary checks
lint-importsDocker (fake mode only — Revit cannot run inside Linux containers):
docker compose --profile ci run --rm tests
docker compose --profile demo run --rm demoMCP Client Integration
Cursor
Add to MCP settings:
{
"mcpServers": {
"eracore-revit": {
"command": "python",
"args": ["-m", "revit_mcp", "mcp"],
"cwd": "F:\\Teach\\eracore",
"env": {
"REVIT_MCP_REVIT_ADAPTER_MODE": "pyrevit"
}
}
}
}More clients: MCP client configuration guide.
Documentation
Document | Description |
Entry point for all docs | |
Context → Container → Component → Code | |
Detailed setup walkthrough | |
pyRevit bridge and extension | |
Use cases, MCP contracts, acceptance criteria | |
Engineering and architecture rules |
Architecture at a Glance
LLM Client (Cursor / Claude)
│ MCP stdio JSON-RPC
▼
EraCore MCP Server (Python)
│ Use Cases → Ports
▼
Fake adapter (in-memory) OR pyRevit HTTP Bridge (:47200)
│
▼
Autodesk Revit 2027 + .rvt modelFull C4 diagrams: System Context · Containers · Components
License
MIT — see LICENSE.
EraCore Team · BIM × AI · 2026
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseBquality-maintenanceAllows AI assistants to interact with Autodesk Revit through the MCP protocol, enabling the AI to create, modify, and delete elements in Revit projects.15321
- AlicenseAqualityDmaintenanceEnables AI assistants to interact with Autodesk Revit to query project data, manage elements, and execute generated code via the Model Context Protocol. It provides full compatibility with GitHub Copilot and Claude to automate BIM modeling workflows.1332MIT
- AlicenseAqualityCmaintenanceEnables Large Language Models to access and manipulate Autodesk Revit models through a pyRevit-based bridge and the Model Context Protocol.20161MIT
- Alicense-qualityBmaintenanceA pyRevit extension and Python server that enables AI clients to interact with a live Autodesk Revit session through tools for project info, view management, element operations, and schedule management.53MIT
Related MCP Connectors
Convert Revit files to XKT, IFC, or DWG and query BIM data via natural language.
Revit model query + APS Design Automation runner.
Connect AI assistants to GitHub - manage repos, issues, PRs, and workflows through natural language.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/soewal19/eracore-revit-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server