CAD建模服务器

提供无需打开SolidWorks、Fusion 360或Blender即可创建、编辑、验证和导出3D模型的功能,适用于AI助手集成。

  • by PRATHVI9607
  • Python
  • 本地部署
  • 2 星标
  • 更新于
在 GitHub 查看 PRATHVI9607/CAD_Autodesk_MCP

使用说明

loki cad mcp-cad&3D建模mcp服务器

赋予AI助手真正的CAD超能力——创建、编辑、验证和导出3D模型 无需打开SolidWorks、Fusion 360或Blender。


它的作用

问克劳德:

创建一个M6螺栓,将所有边缘圆角0.5毫米,导出为STL,然后验证其是否适用于FDM打印

它只是工作——没有GUI,没有脚本,纯粹的对话。


11 MCP工具

工具 说明
cad_create_model 根据参数创建长方体、圆柱体、球体、圆锥体或圆环体
cad_export_model 导出为STL、STEP、OBJ、GLTF、DXF或SVG
cad_query_properties 体积、表面积、边界框、质心、可选质量
cad_apply_operation 圆角、倒角、外壳、拉伸、旋转、布尔运算、镜像、图案
cad_validate_model 3D打印性能检查——水密性、歧管、壁厚
cad_list_templates 浏览机械/建筑/有机模板库
cad_load_template 使用自定义参数实例化模板
cad_import_file 将现有的STL/STEP/OBJ导入内存
cad_sketch_2d 在任何平面上创建二维草图(直线、圆弧、圆、矩形)
cad_translate_model 按(x,y,z)偏移量移动模型,单位为毫米
cad_repair_mesh 修复用于3D打印的STL网格——缠绕、法线、孔洞

我的文件保存在哪里?

您导出的每个模型(STL、STEP、OBJ等)都位于您控制的文件夹中。 集 CAD_MCP_MODELS_DIR 在您的配置中,将文件保存到计算机上的一个真实文件夹中——这是最重要的设置。

平台 推荐值
窗户 C:/Users/YourName/Documents/cad-models
macOS /Users/yourname/Documents/cad-models
Linux /home/yourname/cad-models

为什么这对npx很重要? 没有 CAD_MCP_MODELS_DIR,文件保存在npx缓存中 (~/.npm/_npx/<hash>/node_modules/loki-cad-mcp/models/exports/)--埋在地下,很难找到。 始终设置此变量。

如果文件夹不存在,则会自动创建。在里面你会发现:

cad-models/
├── exports/   ← your STL, STEP, OBJ, GLTF, DXF, SVG files
└── previews/  ← PNG preview images

安装

先决条件

要求 注意事项
Node.js≥18 nodejs.org
Python 3.9–3.12 cadquery-ocp 3.13+没有轮子

选项1-npx(无需安装)

无需全局安装,npx会按需下载并运行该软件包。

npx -y loki-cad-mcp

选项2——全局npm安装

npm install -g loki-cad-mcp

然后参考 loki-cad-mcp 作为配置中的命令。

选项3--克隆和构建

git clone https://github.com/PRATHVI9607/CAD_Autodesk_MCP.git
cd CAD_Autodesk_MCP
npm install          # builds dist/ automatically

Python设置(所有选项都需要)

CadQuery必须安装在Python 3.9–3.12环境中。 运行一次安装脚本——它会创建一个 .venv 并安装所有依赖项:

# macOS / Linux
bash scripts/setup.sh

# Windows PowerShell
.\scripts\setup.ps1

或手动:

python3.12 -m venv .venv
source .venv/bin/activate          # macOS/Linux
# .venv\Scripts\activate           # Windows
pip install -r python/requirements.txt

配置Claude桌面

这就是你连接服务器的方式——你永远不会运行 npx 手动。 Claude Desktop读取此配置文件并自动启动服务器。

步骤1--打开配置文件

平台 路径
窗户 %APPDATA%\Claude\claude_desktop_config.json
macOS ~/Library/Application Support/Claude/claude_desktop_config.json
Linux ~/.config/Claude/claude_desktop_config.json

在任何文本编辑器(记事本、VS Code等)中打开它。如果它还不存在,就创建它。

步骤2——粘贴平台的配置

Windows--npx

{
  "mcpServers": {
    "loki-cad-mcp": {
      "command": "npx",
      "args": ["-y", "loki-cad-mcp"],
      "env": {
        "CAD_MCP_MODELS_DIR": "C:/Users/YourName/Documents/cad-models",
        "CAD_MCP_PYTHON_CMD": "python"
      }
    }
  }
}

macOS--npx

{
  "mcpServers": {
    "loki-cad-mcp": {
      "command": "npx",
      "args": ["-y", "loki-cad-mcp"],
      "env": {
        "CAD_MCP_MODELS_DIR": "/Users/yourname/Documents/cad-models",
        "CAD_MCP_PYTHON_CMD": "python3"
      }
    }
  }
}

Linux--npx

{
  "mcpServers": {
    "loki-cad-mcp": {
      "command": "npx",
      "args": ["-y", "loki-cad-mcp"],
      "env": {
        "CAD_MCP_MODELS_DIR": "/home/yourname/cad-models",
        "CAD_MCP_PYTHON_CMD": "python3"
      }
    }
  }
}

替换 YourName / yourname 使用您的实际用户名。 文件夹(cad-models)它是自动创建的,您不需要自己创建。

步骤3--重新启动克劳德桌面

关闭并重新打开Claude Desktop。服务器在第一次工具调用时自动启动。

您导出的文件将显示在:

  • 窗户: C:\Users\YourName\Documents\cad-models\exports\
  • macOS/Linux: ~/Documents/cad-models/exports/

克隆的repo配置(如果您克隆而不是使用npx)

视窗

{
  "mcpServers": {
    "loki-cad-mcp": {
      "command": "node",
      "args": ["C:/path/to/CAD_Autodesk_MCP/dist/index.js"],
      "env": {
        "CAD_MCP_MODELS_DIR": "C:/Users/YourName/Documents/cad-models",
        "CAD_MCP_PYTHON_CMD": "C:/path/to/CAD_Autodesk_MCP/.venv/Scripts/python.exe"
      }
    }
  }
}

macOS/Linux

{
  "mcpServers": {
    "loki-cad-mcp": {
      "command": "node",
      "args": ["/path/to/CAD_Autodesk_MCP/dist/index.js"],
      "env": {
        "CAD_MCP_MODELS_DIR": "/Users/yourname/Documents/cad-models",
        "CAD_MCP_PYTHON_CMD": "/path/to/CAD_Autodesk_MCP/.venv/bin/python"
      }
    }
  }
}

环境变量

变量 默认值 描述
CAD_MCP_MODELS_DIR ./models ⚠️ 将其设置为绝对路径。 默认情况下,使用npx时将文件埋在npx缓存中。
CAD_MCP_PYTHON_CMD 自动检测 Python 3.9–3.12可执行文件的路径。自动检测 .venv 首先,然后是系统 python3/python.
CAD_MCP_LOGS_DIR ./logs 服务器日志文件目录。
CAD_MCP_GEOMETRY_TIMEOUT_MS 30000 几何操作超时(毫秒)
CAD_MCP_RENDER_TIMEOUT_MS 60000 渲染/预览超时(毫秒)

建筑

MCP Client (Claude Desktop / Claude Code / Cursor / etc.)
    │  stdio transport — MCP protocol (JSON-RPC 2.0)
    ▼
dist/index.js              — 11 tools, Zod validation, StdioServerTransport
dist/http-server.js        — optional REST wrapper on port 3000 (testing)
    │  JSON-RPC 2.0 over subprocess stdin/stdout
    ▼
python/cadquery_server.py  — persistent geometry server
    ├─ CadQuery / OpenCASCADE  (parametric BRep modelling)
    ├─ trimesh                 (mesh validation, repair, OBJ/GLTF export)
    └─ validators.py           (3D-printability checks)
    ▼
CAD_MCP_MODELS_DIR/exports/    (STL, STEP, OBJ, GLTF, DXF, SVG)
CAD_MCP_MODELS_DIR/previews/   (PNG previews)

发展

# Clone & install
git clone https://github.com/PRATHVI9607/CAD_Autodesk_MCP.git
cd cad-mcp
npm install

# Set up Python
.\scripts\setup.ps1   # Windows
bash scripts/setup.sh # macOS/Linux

# Type-check
npm run typecheck

# Build
npm run build

# Start HTTP test server (port 3000)
npm run start:http

# Run integration tests
npm run test:http

安全

  • 所有输出文件严格限于 CAD_MCP_MODELS_DIR --路径遍历被拒绝
  • 根据验证模型名称 /^[A-Za-z0-9_\-]{1,128}$/
  • 在到达CAD内核之前,拒绝负/零尺寸
  • 几何操作在30秒后超时;60秒后渲染
  • 根据shell注入字符验证Python可执行路径
  • 没有向MCP客户端公开原始Python堆栈跟踪
  • HTTP测试服务器绑定到 localhost 只是——不要暴露在网络中

模板

9个参数化模板可供使用:

类别 模板
机械 bolt_m6, nut_m6, bracket_l, gear_spur
建筑 wall_section, column_round, slab_flat
有机 blob_sphere, ring_torus
# In Claude:
"Load the bolt_m6 template with shank_length=40 and export to STL."

许可证

麻省理工学院——见 许可证.