Config is the same across clients — only the file and path differ.
{
"mcpServers": {
"revit": {
"env": {
"REVIT_HOST": "localhost",
"REVIT_PORT": "8080"
},
"args": [
"C:\\FULL\\PATH\\TO\\github_revit_MCP_server\\mcp-server\\dist\\index.js"
],
"command": "node"
}
}
}Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
Control Autodesk Revit through natural language using Claude AI. This project implements a Model Context Protocol (MCP) server that bridges Claude Desktop and Revit 2023, enabling AI-driven BIM operations through 61 tools.
Run this in your terminal to verify the server starts. Then let us know if it worked — your result helps other developers.
npx -y 'tsc' 2>&1 | head -1 && echo "✓ Server started successfully"
After testing, let us know if it worked:
Five weighted categories — click any category to see the underlying evidence.
No known CVEs.
Checked tsc against OSV.dev.
Click any tool to inspect its schema.
Be the first to review
Have you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Others in design / developer-tools
A Model Context Protocol (MCP) server and CLI that provides tools for agent use when working on iOS and macOS projects.
XcodeBuildMCP provides tools for Xcode project management, simulator management, and app utilities.
Asynchronous coordination layer for AI coding agents: identities, inboxes, searchable threads, and advisory file leases over FastMCP + Git + SQLite
MCP server for accessing Figma plugin console logs and screenshots via Cloudflare Workers or local mode
MCP Security Weekly
Get CVE alerts and security updates for Cutom_Revit_MCP_server and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
Control Autodesk Revit through natural language using Claude AI. This project implements a Model Context Protocol (MCP) server that bridges Claude Desktop and Revit 2023, enabling AI-driven BIM operations through 61 tools.
Ask Claude "list all walls", "create a sheet with building elevations", or "count doors by level" and it executes directly in your Revit model.
Claude Desktop ──(stdio/MCP)──► TypeScript MCP Server ──(HTTP :8080)──► C# Revit Plugin ──► Revit API
| Component | Language | Role |
|---|---|---|
| MCP Server | TypeScript / Node.js | Translates MCP tool calls from Claude Desktop into HTTP requests |
| Revit Plugin | C# / .NET Framework 4.8 | Receives HTTP requests and executes Revit API operations on the main thread |
The C# plugin uses the ExternalEvent pattern for thread-safe Revit API access. An HttpListener on localhost:8080 receives tool requests, queues them via ExternalEvent, and waits for the result.
C:\Program Files\Autodesk\Revit 2023\)revit-mcp-server/
├── RevitPlugin/ # C# Revit Add-in
│ ├── App.cs # Plugin entry point (IExternalApplication)
│ ├── HttpServer.cs # HTTP server on localhost:8080
│ ├── ExternalEventHandler.cs # Thread-safe Revit API execution
│ ├── ToolRouter.cs # Routes tool names to handlers
│ ├── RevitMcpPlugin.csproj # .NET project file
│ ├── RevitMcpPlugin.addin # Revit add-in manifest
│ ├── Tools/
│ │ ├── QueryTools.cs # get_elements, find_elements, quantities
│ │ ├── ElementTools.cs # create/delete/move/copy elements
│ │ ├── ParameterTools.cs # get/set parameter values
│ │ ├── ViewTools.cs # manage views, duplicate, filters
│ │ ├── SheetTools.cs # create sheets, place viewports
│ │ ├── SelectionTools.cs # select elements by criteria
│ │ ├── VisibilityTools.cs # hide/isolate/unhide elements
│ │ ├── LevelGridTools.cs # levels, grids, rename elements
│ │ ├── MEPTools.cs # panel schedules, conduit QA, room contents
│ │ ├── AnnotationTools.cs # tags, duplicate tag detection
│ │ └── ProjectTools.cs # categories list, warnings
│ └── Helpers/
│ ├── CategoryHelper.cs # Category name resolution (60+ aliases)
│ ├── UnitHelper.cs # Unit conversions (mm/m/ft/in)
│ └── JsonHelper.cs # Element-to-JSON serialization
│
├── mcp-server/ # TypeScript MCP Server
│ ├── package.json
│ ├── tsconfig.json
│ ├── .env.example
│ └── src/
│ ├── index.ts # Entry point
│ ├── server.ts # MCP server setup + tool registration
│ ├── revit-client.ts # HTTP client for Revit plugin
│ ├── types.ts # TypeScript interfaces
│ └── tools/
│ ├── query-tools.ts # Element query tools
│ ├── element-tools.ts # Element creation/modification tools
│ ├── parameter-tools.ts # Parameter tools
│ ├── view-tools.ts # View management tools
│ ├── sheet-tools.ts # Sheet management tools
│ ├── selection-tools.ts # Selection tools
│ ├── visibility-tools.ts # Visibility tools
│ ├── level-grid-tools.ts # Level/grid tools
│ ├── mep-tools.ts # MEP tools
│ ├── annotation-tools.ts # Annotation tools
│ └── project-tools.ts # Project-wide tools
│
└── README.md