内容
align="center">
<img width="1536" height="509" alt="ChatGPT Image Jul 2, 2026, 12_23_27 PM" src="https://github.com/user-attachments/assets/88db7778-fb7c-433c-8d8f-062fa53a7688" />
</p>
<h1 align="center">🚀 CATIClaude</h1>
<p align="center">
基于模型上下文协议(MCP)的 CATIA V5 自动化
</p>
<p align="center">
</p>
## ⭐ 徽章
<p align="center">
<img src="https://img.shields.io/badge/Python-3.10+-blue">
<img src="https://img.shields.io/badge/CATIA-V5-blue">
<img src="https://img.shields.io/badge/MCP-Compatible-orange">
<img src="https://img.shields.io/badge/Claude-Desktop-orange">
<img src="https://img.shields.io/badge/Platform-Windows-lightgrey">
<img src="https://img.shields.io/badge/License-MIT-green">
</p>
## 🧠 概述
CATIClaude 是一个生产级别的模型上下文协议(MCP)服务器,通过 pyCATIA COM 自动化将 Claude Desktop 直接连接到 CATIA V5。
它使工程师能够使用自然语言设计真正的机械零件,并自动生成:
* CATPart 文件
* STEP / IGES 导出
* 3D 几何示例:
“设计一个轻量级的 L 型支架,底边长 120mm,厚度 10mm,带有 2 个安装孔”
➡️ CATIA 自动构建完整的 3D 模型。
## 🏛 设计理念
CATIClaude 围绕一个核心原则设计:
> 人工智能应该描述工程意图,而不是低级别的 CAD 操作。
CATIClaude 通过分层规划架构将自然语言转换为确定性的 CAD 操作,而不是向用户暴露 CAT API 的复杂性。
这保持了接口的简单性,同时确保了工程可靠性。
## ⚙️ 核心思想手动在 CAD 软件中建模:
🧠 人工智能规划 → MCP 工具 → CATIA V5 → 真实几何体
## 🚀 路线图
- [x] CATIA V5 集成
- [x] MCP 服务器 [x] 自然
- [x] STEP 导出
- [x] 参数化编辑
- [ ] 装配体生成
- [ ] 出图自动化
- [ ] 多智能体工程工作流
- [ ] 人工智能优化工具
- [ ] CATIA V6 支持
## 🏗️ 系统架构
```mermaid
flowchart TD
A[Claude Desktop] --> B[MCP 服务器核心]
B --> C[CAD 意图规划器]
C --> D[执行引擎]
D -->pyCATIA 抽象层]
E --> F[CAT5 COM API]
F --> G[3D 模型 + 导出文件]
style A fill:#ff7a18,stroke:#333,color:#fff
style G fill:#1f77ff,stroke:#333,color:#fff
```
## 🧩 架构层
| 层 | 组件 | 责任 |
| --------- | ------------------------------------ |
| 1 | MCP 服务器核心 | 工具路由 + FastMCP| 2 | CATIA 会话引擎 | 稳定的 COM 会话管理 |
| 3 | pyCATIA 抽象 | CATIA API 的安全包装 |
| 4 | CAD 意图规划器 | 自然语言 → 结构化设计 |
| 5 | 执行引擎 | 逐步 CAD ## 📁 项目结构
catia_mcp/
├── catia/
├── core/
├── engine/
├── tools/
├── utils/
├── tests/
├── config/
├── server.py
├── requirements.txt
└── README.md
## 🧠 核心功能
🔹 自然语言
CAD 将文本转换为真实的 CAD体
支持支架、板、轴、壳体
🔹 强大的 CATIA 会
单例 COM 连接
崩溃后自动重新连接
安全的多次调用执行
🔹 草图智能
自动草图验证
防止无效的 Pad/Pocket 操作
🔹 参数化设计支持
命名参数
实时几何更新
🔹 导出管道
STEP / IGES / STL 导出
自动文件生成
## ✨ 功能
- 自然语言 CAD 生成
- 基于规则的 CAD 规划引擎
- 稳定的 CATIA COM 会话管理
- 自动几何验证
- 参数化建模支持
- STEP / STL / IGES 导出
- 线程安全的 MCP 执行
- 重试和恢复系统
- 结构化的 JSON 响应
- 基于模拟的测试
- 面向生产的架构
## 🔄 执行管道
用户提示
↓
意图解析器
↓
CAD 规划器
↓
验证器
↓
执行器
↓
pyCATIA 包装器
↓
CATIA V5 模型
↓
导出的 CAD 文件
## 🛠 可用的 MCP 工具
### 文档
- create_part
- open_document
- save_document
- close_document
### 草图
- create_sketch
- add_line
- add_circle
- add_rectangle
- close_sketch
### 功能
- pad
- pocket
- hole
- fillet
- chamfer
### 参数
- set_parameter
- get_parameter
- list_parameters
### 分析
- get_tree
- get_edges
- measure_distance
- get_mass_properties
- validate_geometry
### 导出
- export_step
- export_iges
- export_stl
### 人工智能设计
- design_from_text
## 💡 示例用法
1. L 型支架
设计一个轻量级的 L 型支架:
底边长:120mm
厚度:10mm
2 个安装孔
2. 轴
创建一个直径为 20mm,长为 150mm 的钢轴。
3. 外壳
设计一个空心盒子:
150 × 90 × 60 mm
壁厚:3mm
导出 STEP 文件
## 🧪 可靠性工程
🔁 自动重试系统(COM 安全)
🧯 CATIA 会话恢复
🧩 操作前几何验证
🧠 结构化错误系统(无原始回溯)
🔒 全局执行锁定(线程安全的 MCP)
📜 每个 CAD 操作的完整审计日志
## ⚠️ CATIA 兼容性注意
某些 CATIA V5 版本的 COM API 不同。
为了确保稳定性:
孔特征通过草图 + 凹槽备用实现
圆角/倒角使用稳定的 ShapeFactory 调用
只有 feature_manager.py 可能需要特定于版本的调整
## 🧰 安装
需求
Windows 10,11 /
CATIA V5 (推荐 R20+ 版本) /
Python 3.10+ /
pywin32 /
pycatia
设置
git clone https://github.com/YOUR_USERNAME/catia-claude-mcp
cd catia-claude-mcp
pip install -r requirements.txt
python -m pywin32_postinstall -install
运行服务器
python server.py
连接到 Claude Desktop
编辑:
%APPDATA%\Claude\claude_desktop_config.json
JSON :
{
"mcpServers": {
"catia": {
"command": "C:\\Python\\python.exe",
"args": ["C:\\path\\to\\catia_mcp\\server.py"]
}
}
}
## 📦 输出
.CATPart
.STEP
.IGES
.STL
## 🧪 测试
pytest -q
基于模拟的测试(无需 CATIA)。
## 🌍 为什么这个项目很重要
该项目探索:
人工智能 × 机械工程自动化
自然语言 CAD 系统
多智能体工程工作流
设计工程接口的未来
## 🤝 贡献
欢迎贡献。
如果您想改进 CATIClaude:
1. 复刻仓库
2. 创建一个功能分支
3. 提交您的更改
4. 打开一个拉取请求
## 📜 许可证
该项目在 MIT 许可证下发布。
详见 LICENSE 文件。
## 🙏 鸣谢
使用以下技术构建:
- Claude Desktop
- 模型上下文MCP)
- pyCATIA
- Python
- CATIA V5 COM 自动化
特别感谢这些项目背后的开源社区。
## 📖 引用
如果您在研究或工程工作流中使用该项目,
请考虑引用该仓库并给它一个 GitHub 星标。
## 👤 作者
**Pouya Bagheri**
机械工程学生
兴趣
- 工程人工智能
- CAD 自动化
- 机械设计
- 数字化制造
- 模型上下文协议
- 工程智能
:
www.linkedin.com/in/pouyabagheri
Gmail:
pouya.bagheri.2005@gmail.com
<p align="center">
如果这个项目对您有在 GitHub 上给它一个 ⭐。
</