3D Agent Mcp — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited 3D Agent Mcp (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
<div align="center">
Text → 2D Preview → 3D Model → Print-Ready STL
AI-powered multi-agent pipeline for generating 3D printable models from text descriptions, with MCP server for seamless AI assistant integration.
🇬🇧 English | 🇷🇺 Русский
<img src="docs/images/v2_text_to_3d_pipeline.png" alt="Pipeline" width="90%"/>
</div>
<video src="https://github.com/teslaproduuction/3d-agent-mcp/raw/main/docs/demo.mp4" controls width="100%"></video>
<table> <tr> <td><img src="docs/PR/data/images/preview_preview_022218a9.png" width="200"/></td> <td><img src="docs/PR/data/images/preview_preview_02a7f736.png" width="200"/></td> <td><img src="docs/PR/data/images/preview_preview_037a6c8e.png" width="200"/></td> <td><img src="docs/PR/data/images/preview_preview_06079652.png" width="200"/></td> </tr> <tr> <td><img src="docs/PR/data/images/preview_preview_066fe8d4.png" width="200"/></td> <td><img src="docs/PR/data/images/preview_preview_08134311.png" width="200"/></td> <td><img src="docs/PR/data/images/mv_back-right_0a51fab9.png" width="200"/></td> <td><img src="docs/PR/data/images/mv_left.png" width="200"/></td> </tr> </table>
2D previews generated before 3D conversion — faster iteration, less API cost
<table> <tr> <td><img src="docs/PR/data/images/preview_zero123_right_bf464842.png" width="150"/></td> <td><img src="docs/PR/data/images/preview_zero123_right_bf93635c.png" width="150"/></td> <td><img src="docs/PR/data/images/preview_zero123_right_c023b3c2.png" width="150"/></td> <td><img src="docs/PR/data/images/preview_zero123_right_c46b046f.png" width="150"/></td> <td><img src="docs/PR/data/images/preview_zero123_right_d243190d.png" width="150"/></td> </tr> </table>
Multiple camera angles → higher-quality 3D geometry via Hunyuan3D-2mv
<img src="docs/images/c4_l1_context.png" alt="C4 Context" width="80%"/>
<img src="docs/images/c4_l2_containers.png" alt="C4 Containers" width="80%"/>
User Prompt
│
▼
┌─────────────────────┐
│ Planner Agent │ ← Decomposes prompt into objects
└─────────┬───────────┘
│
▼
┌─────────────────────┐
│ Image Gen Agent │ ← DALL-E 3 / FLUX / Qwen (2D preview)
└─────────┬───────────┘
│
[User confirms preview]
│
▼
┌─────────────────────┐
│ Generation Agent │ ← Tripo3D API / Hunyuan3D (local)
└─────────┬───────────┘
│
▼
┌─────────────────────────────────────┐
│ Intelligent PostProcessing Agent │
│ ├── Overhang analysis (24 angles) │
│ ├── Support strategy decision │
│ └── Optimal orientation on bed │
└─────────┬───────────────────────────┘
│
▼
Print-Ready STL<img src="docs/images/v2_tech_stack.png" alt="Tech Stack" width="80%"/>
| Feature | Description |
|---|---|
| Text-to-3D | Generate 3D model from any text description |
| 2D Preview gate | Create image preview before expensive 3D API call |
| Intelligent post-processing | AI agent analyzes geometry, decides supports and orientation |
| Multi-view generation | Multiple camera angles → better 3D quality |
| Multi-object scenes | Plan and generate complex scenes with multiple objects |
| MCP integration | Use from Claude Desktop, Cursor, and any MCP client |
| Local models | Hunyuan3D-2, TripoSR, FLUX — no API costs, runs on-premise |
| Docker stack | Full local stack with GPU support |
desk_organizer analysis:
✅ Printable without supports in recommended orientation.
Complexity: EASY
AI Analysis:
- Geometry complexity: MEDIUM
- Max overhang angle: 38.5°
- Bed contact area: 1 250 mm²
- No internal cavities detected
- Recommended: rotate 180° around X axisdocker pull ghcr.io/teslaproduuction/3d-agent-mcp:latest
cp .env.example .env
# Fill in API keys
docker-compose up -d
# → http://localhost:7860# Install UV
winget install --id=astral-sh.uv -e # Windows
curl -LsSf https://astral.sh/uv/install.sh | sh # Linux/macOS
# Clone and setup
git clone https://github.com/teslaproduuction/3d-agent-mcp.git
cd 3d-agent-mcp
uv venv --python 3.10
uv sync --all-extras
# Configure
cp .env.example .env
# Edit .env with your API keys
# Run
uv run python ui/gradio_app.py
# → http://localhost:7860cp .env.example .env
# Edit .env
docker-compose up -d --build
# → http://localhostpython -m venv .venv
source .venv/bin/activate # Linux/macOS
.venv\Scripts\activate # Windows
pip install -r requirements.txt
cp .env.example .env
python ui/gradio_app.py # → http://localhost:7860Works with Claude Desktop, Cursor, Windsurf, and any MCP-compatible client.
claude_desktop_config.json){
"mcpServers": {
"3d-agent": {
"command": "python",
"args": ["/path/to/3d-agent-mcp/mcp_server/server.py"],
"env": {
"TRIPO_API_KEY": "your_key",
"OPENAI_API_KEY": "your_key"
}
}
}
}User: Generate a phone stand for 3D printing
Claude: [calls generate_3d_model tool]
✅ Model generated and optimized for printing!
- File: outputs/models/phone_stand_optimized.stl
- Supports: none required
- Orientation: base-down
- Print time: ~2h 15minAvailable MCP tools: generate_3d_model · generate_2d_preview · analyze_printability · plan_scene
→ See mcp_server/README.md for full API docs.
| Key | Purpose | Required |
|---|---|---|
OPENAI_API_KEY | DALL-E 3 image gen + GPT for agents | For cloud mode |
TRIPO_API_KEY | 3D generation (Tripo3D cloud) | For cloud mode |
ANTHROPIC_API_KEY | Claude models as agent LLM | Optional |
REPLICATE_API_TOKEN | SDXL / Flux image generation | Optional |
No cloud keys needed for local mode — run Hunyuan3D + FLUX via Docker stack.
config.yaml controls all behavior:
default_settings:
# Image generation
image_generation:
provider: "local" # local | dalle3 | sdxl | flux
# 3D generation
generation:
api_provider: "local" # local | tripo | meshy
face_limit: 10000
# Post-processing
postprocessing:
mode: "intelligent" # AI decides automatically
auto_orient: true
max_overhang_angle: 45.0
# Printer profile
printer:
build_volume: [220, 220, 250] # mm — Ender 3 / Bambu A1
nozzle_diameter: 0.4
material: "PLA"
# LLM backend
llm:
default_provider: "ollama" # ollama | openai | anthropic
local:
ollama_models: ["qwen2.5:32b", "qwen2.5:7b"]3d-agent-mcp/
├── agents/ # AI agents
│ ├── coordinator.py # Pipeline orchestrator
│ ├── planner_agent.py # Scene decomposition
│ ├── image_generation_agent.py # 2D preview
│ ├── generation_agent.py # 3D API calls
│ └── intelligent_postprocessing_agent.py
│
├── api_clients/ # API wrappers
│ ├── llm_client.py # OpenAI / Anthropic / Ollama
│ ├── image_api_client.py # DALL-E / SDXL / FLUX
│ └── tripo_client.py # Tripo3D
│
├── mcp_server/ # MCP server
│ ├── server.py # Tool definitions
│ └── README.md # MCP API docs
│
├── ui/ # Gradio web UI
│ ├── gradio_app.py # Main app
│ └── tabs/, handlers/, components/
│
├── postprocessing/ # Geometry analysis
├── docker/ # Local model containers
│ ├── hunyuan3d/ # Hunyuan3D-2 (local 3D)
│ ├── flux/ # FLUX.1 (local image gen)
│ ├── comfyui/ # ComfyUI
│ └── nginx/ # Reverse proxy
│
├── tests/
├── config.yaml # Main config
├── .env.example # API key template
├── docker-compose.yml # Full Docker stack
└── pyproject.toml| Diagram | File |
|---|---|
| Component | docs/PR/diagrams/01_component.png |
| Sequence | docs/PR/diagrams/02_sequence.png |
| Activity | docs/PR/diagrams/03_activity_gci.png |
| Deployment | docs/PR/diagrams/04_deployment.png |
| Classes | docs/PR/diagrams/05_classes.png |
# Run tests
pytest tests/
# Format
black .
# Lint
flake8 .
# Type check
mypy .git checkout -b feature/my-featuregit commit -m "feat: add my feature"git push origin feature/my-featureMIT © 2026 — see LICENSE
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.