RevitMCP - Revit自然语言交互
用于 Revit 的 MCP 服务器和插件。
XuXinran1011
README
RevitMCP
项目简介
RevitMCP(Model Context Protocol for Revit)致力于为Revit引入基于MCP协议的自然语言交互能力,极大提升BIM建模与协作效率。项目采用领域驱动设计(DDD)、CQRS模式和分层架构,支持多目标框架,具备高可扩展性和易维护性。
系统架构与设计
架构分层
- RevitMCP.Plugin(.NET 8):Revit插件端,负责UI、命令发送、结果展示、与Server通信。
- RevitMCP.Server(.NET 9):MCP服务器端,负责自然语言解析、命令分解、Revit API操作、与LLM客户端对接。
- RevitMCP.Shared(netstandard2.0):共享DTO、接口、通信协议。
- docs/:详细设计与专题文档。
技术栈
- .NET 8(Plugin端,兼容Revit 2025)
- .NET 9(Server端,兼容MCP SDK)
- MCP官方C# SDK
- Revit API 2025
- xUnit、Moq、FluentAssertions(测试)
- GitHub Actions(CI/CD)
通信机制
- Plugin与Server通过MCP协议跨进程通信(Stdio/IPC,JSON消息)
- Shared层定义所有跨进程消息、DTO、接口,保证解耦
- Server预留与LLM客户端(如Claude Desktop)对接接口
主要功能
- 自然语言查询与建模(如"创建10米×8米房间")
- 多轮对话与参数补全
- 自动生成墙体、门窗、楼板等建筑模型
- 端到端跨进程通信与反馈
- 高度可扩展的DDD分层架构
- 完善的单元、集成、系统测试
MVP演示流程
- 用户通过Ribbon界面启动MCP服务。
- 在LLM客户端输入自然语言指令(如"创建一个10米×8米的房间")。
- 插件与Server通信,Server解析指令并调用Revit API自动建模。
- 用户可多轮对话添加门窗、楼板等,实时看到模型生成。
- 插件端反馈操作结果。
开发进度与计划
已完成
- 项目分层与目录结构搭建
- Shared层通信协议、DTO、接口实现
- Plugin/Server基础跨进程通信(Ping-Pong演示)
- MVP端到端集成测试(自动化)
- CI/CD自动化(GitHub Actions)
- 文档结构整理与.gitignore优化
进行中
- 自然语言解析与基础建模命令实现
- 多轮对话与参数补全
- MVP演示脚本与系统测试
计划中
- 高级功能(族库管理、变更管理、工程量计算等)
- 多版本Revit支持、性能优化、安全增强
- 安装包制作与配置指导
- 与项目管理系统集成接口预留
详细开发计划与模块进度见开发计划.md与REVITMCP_MODULES_CHECKLIST.md。
目录结构
/
├── .github/workflows/ # CI/CD配置
├── README.md # 项目简介与说明
├── 开发计划.md # 迭代目标与进度
├── 技术文档.md # 技术选型与架构
├── REVITMCP_MODULES_CHECKLIST.md # 模块清单与状态
├── RevitMCP_架构与项目结构.md # 详细架构设计
├── docs/ # 详细设计与专题文档
├── References/ # 本地DLL引用(不纳入git)
├── RevitMCP.Plugin/ # 插件端代码
├── RevitMCP.Server/ # 服务器端代码
├── RevitMCP.Shared/ # 共享库代码
├── RevitMCP.IntegrationTests/ # 集成测试
└── ...
依赖说明
- 需本地安装.NET 8、.NET 9、Revit 2025
- RevitAPI.dll、RevitAPIUI.dll请在本地Revit安装目录下获取并配置引用(不纳入git)
- 详细依赖与配置见技术文档.md
贡献方式
欢迎issue、PR和建议!
- 参与开发请阅读CONTRIBUTING.md
- 遵守CODE_OF_CONDUCT.md
- 任何问题可在GitHub仓库提交issue
许可证
MIT License
推荐服务器
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
MCP Package Docs Server
促进大型语言模型高效访问和获取 Go、Python 和 NPM 包的结构化文档,通过多语言支持和性能优化来增强软件开发。
Claude Code MCP
一个实现了 Claude Code 作为模型上下文协议(Model Context Protocol, MCP)服务器的方案,它可以通过标准化的 MCP 接口来使用 Claude 的软件工程能力(代码生成、编辑、审查和文件操作)。
@kazuph/mcp-taskmanager
用于任务管理的模型上下文协议服务器。它允许 Claude Desktop(或任何 MCP 客户端)在基于队列的系统中管理和执行任务。
mermaid-mcp-server
一个模型上下文协议 (MCP) 服务器,用于将 Mermaid 图表转换为 PNG 图像。
Jira-Context-MCP
MCP 服务器向 AI 编码助手(如 Cursor)提供 Jira 工单信息。

Linear MCP Server
一个模型上下文协议(Model Context Protocol)服务器,它与 Linear 的问题跟踪系统集成,允许大型语言模型(LLM)通过自然语言交互来创建、更新、搜索和评论 Linear 问题。

Sequential Thinking MCP Server
这个服务器通过将复杂问题分解为顺序步骤来促进结构化的问题解决,支持修订,并通过完整的 MCP 集成来实现多条解决方案路径。
Curri MCP Server
通过管理文本笔记、提供笔记创建工具以及使用结构化提示生成摘要,从而实现与 Curri API 的交互。