3D模型设计与打印服务

一个基于Python的MCP服务器,支持通过ChatGPT和其他兼容客户端或内置Web控制面板进行迭代式3D模型设计、预览、切片和打印。

  • by Ghostwillower
  • Python
  • 本地部署
  • 更新于
在 GitHub 查看 Ghostwillower/Pc-MCP

使用说明

Pc MCP

我的PC的MCP服务器

🚀 快速开始

Pc MCP新手? 从这里开始:

  • 入门指南 -完成从安装到首次使用的逐步设置

文档

CadSlicerPrinter MCP服务器

Python 3 MCP服务器,支持通过ChatGPT和其他MCP兼容客户端或通过附带的web控制面板进行迭代3D模型设计、预览、切片和打印。

✨ 最近重新设计,以实现最高的后端效率 -请参阅 建筑.md 了解详情。

关键改进(v0.2.0)

  • 🚀 减少74% 主服务器代码(1461→381行)
  • ⚡ 异步操作 用于渲染、切片和HTTP请求
  • 🔌 连接池 用于OctoPrint API(减少延迟)
  • 💾 配置缓存 为了更快地访问
  • 🏗️ 模块化架构 (配置、服务、工具、实用工具)
  • ✅ 零特征损失 -完全向后兼容

特性

  • 迭代CAD设计:人工智能驱动的迭代模型细化,带有视觉反馈循环
    • 从自然语言描述创建参数化OpenSCAD模型
    • 检索当前模型参数和代码
    • 基于将预览图像与目标设计进行比较来更新参数
    • 迭代,直到模型匹配所需的输出
  • 预览渲染:在设计过程的任何阶段可视化模型
  • 模型切片:使用行业标准切片机生成G代码
  • 3D打印机控制:通过OctoPrint上传并启动打印作业
  • 文件系统操作:查看和修改计算机上的文件
    • 使用安全控制读取和写入文件
    • 列出目录内容
    • 创建和删除文件/目录
    • 获取文件信息和元数据
  • 终端命令:在没有管理员权限的情况下安全执行shell命令
    • 运行开发工具、脚本和实用程序
    • 构建和测试代码
    • 安全控制阻止特权操作(sudo、systemctl等)
  • Web控制面板:用于控制所有功能的极简主义web界面
  • OAuth身份验证:用于安全访问控制的可选OAuth 2.0身份验证
  • Cloudflared隧道支持:可选的Cloudflare隧道集成,用于安全的远程访问
  • 自动启动支持:启动时作为系统服务运行,无需GUI
  • OpenAI 兼容:使用stdio传输与OpenAI的MCP连接器无缝集成

迭代设计工作流程

该服务器支持真正的AI驱动迭代设计:

  1. 创建 -AI根据描述生成初始参数模型
  2. 预览 -系统渲染当前模型状态的PNG图像
  3. 比较 -AI将预览与目标设计要求进行比较
  4. 更新 -AI根据差异修改特定参数
  5. 重复 -步骤2-4迭代,直到设计与目标匹配

迭代示例:

AI: Creates phone stand → Preview shows it's too narrow
AI: Updates width from 50mm to 80mm → Preview confirms improvement
AI: Updates angle from 45° to 60° → Preview matches target design

快速开始

看 入门指南 有关详细的安装和设置说明。

太长,读不下去了

# Install dependencies
pip install -e .

# Configure environment
export WORKSPACE_DIR="./workspace"
export OPENSCAD_BIN="/usr/bin/openscad"
export SLICER_BIN="/usr/bin/prusa-slicer"
export OCTOPRINT_URL="http://localhost:5000"
export OCTOPRINT_API_KEY="your-api-key"

# Run the server (stdio mode - default, OpenAI compatible)
cd src
python server.py

# Or run with web control panel
python server.py --web

# Or run with HTTP transport for web-based clients
python server.py --transport streamable-http

Web控制面板

服务器包括一个极简主义的web界面,用于控制所有功能:

# Start with web interface
python server.py --web

# Access at http://localhost:8080

看 WEBINTERFACE_GUIDE.md 查看详细的web界面和自动启动文档。

运输方式

服务器支持多种传输协议:

  • 标准 (默认):标准输入/输出-与OpenAI的MCP连接器兼容
  • 可流式传输http:基于HTTP的传输 http://localhost:8000/mcp
  • SSE:服务器发送事件传输
  • 网络:Web控制面板模式(使用 --web 旗帜)

通过设置默认值 MCP_TRANSPORT 环境变量或用途 --transport 旗帜。

自动启动设置

将服务器配置为启动时自动启动:

# Install auto-start service (Linux)
sudo ./install-autostart.sh

# Start the service
sudo systemctl start cadslicerprinter@$USER.service

# Enable on boot
sudo systemctl enable cadslicerprinter@$USER.service

看 WEBINTERFACE_GUIDE.md 用于Windows和macOS说明。