Bambu/OrcaSlicer MCP Agent
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@Bambu/OrcaSlicer MCP Agentanalyze bracket.3mf"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
Bambu/OrcaSlicer MCP Agent
A Model Context Protocol (MCP) server that acts as a manufacturing consultant for 3D printing. Claude can analyze .3mf print files, run the slicer with different preset profiles, and recommend optimal settings for speed vs. strength trade-offs.
Features
Read .3mf Metadata: Extract current print settings from any
.3mffileAnalyze Current Settings: Run slicer on existing file to get baseline metrics
Compare Profiles: Test Fast/Balanced/Strong profiles and get recommendations
Batch Production: Calculate total time/cost for producing multiple units
Related MCP server: instant-meshes-mcp
Prerequisites
Python 3.10+
OrcaSlicer installed and available in PATH (CLI mode)
Claude Desktop with MCP support
Installation
Clone this repository:
git clone <repository-url>
cd bambu-mcp-agentInstall dependencies:
pip install -r requirements.txtVerify OrcaSlicer CLI is available:
orcaslicer --versionIf not found, install OrcaSlicer and ensure it's in your PATH.
Configuration
Claude Desktop MCP Setup
Add this to your Claude Desktop MCP configuration file (location varies by OS):
{
"mcpServers": {
"bambu-mcp": {
"command": "python",
"args": ["-m", "bambu_mcp"],
"cwd": "/path/to/bambu-mcp-agent/src"
}
}
}Or using the direct path:
{
"mcpServers": {
"bambu-mcp": {
"command": "python",
"args": ["/path/to/bambu-mcp-agent/src/bambu_mcp/__main__.py"]
}
}
}macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json
Usage
Example Conversation
User: "Analyze bracket.3mf"
Claude: [calls 3mf://bracket.3mf/metadata]
[calls analyze_current_print]
Your bracket is currently set to:
- 20% infill, 0.20mm layers
- Estimated time: 1h 15m per part
- Material: 12.4g PLA ($0.37)
User: "I need to print 50 for a trade show. Minimize time."
Claude: [calls compare_print_profiles]
[calls calculate_batch_metrics with quantity=50]
Here are your options:
Profile | Per Unit | 50 Units | Savings | Trade-off
-----------|----------|-----------|-----------|----------
Current | 1h 15m | 62.5 hrs | baseline | -
Fast | 45m | 37.5 hrs | -25 hrs | Visible layers
Balanced | 58m | 48.3 hrs | -14 hrs | Slight texture
Strong | 1h 32m | 76.7 hrs | +14 hrs | Overkill
Recommendation: Use Fast profile. You'll save a full day
of print time. The layer lines will be visible but acceptable
for trade show giveaways.
To apply: In Bambu Studio, set layer height to 0.28mm
and infill to 10%.MCP Tools
Resource: 3mf://{file_path}/metadata
Reads current print settings from a .3mf file.
Returns:
Filament type
Nozzle diameter
Layer height
Infill density
Wall loops
Support settings
Previous slice info (if available)
Tool: analyze_current_print
Runs slicer on existing file as-is to get baseline metrics.
Arguments:
file_path(string): Path to the .3mf file
Returns:
Estimated time (minutes and formatted)
Filament weight (grams)
Filament length (meters)
Estimated cost (USD)
Warnings (if any)
Tool: compare_print_profiles
Slices file with 3 hardcoded profiles (Fast/Balanced/Strong) and returns comparison.
Arguments:
file_path(string): Path to the .3mf file
Returns:
Comparison results for current, fast, balanced, and strong profiles
Recommendation based on time savings
Tool: calculate_batch_metrics
Calculates total time/cost for producing N units with a specific profile.
Arguments:
file_path(string): Path to the .3mf filequantity(integer): Number of units to produceprofile_name(string): "current", "fast", "balanced", or "strong"
Returns:
Total time (hours and formatted)
Total filament (kg)
Total cost (USD)
Per unit time
Comparison vs current settings
Profile Presets
Fast Profile
Layer height: 0.28mm
Infill: 10%
Wall loops: 2
Use case: Prototypes, internal parts
Balanced Profile
Layer height: 0.20mm
Infill: 15%
Wall loops: 3
Use case: Most production parts
Strong Profile
Layer height: 0.16mm
Infill: 25%
Wall loops: 4
Use case: Load-bearing, customer-facing
Architecture
bambu-mcp-agent/
├── src/bambu_mcp/
│ ├── __init__.py
│ ├── server.py # MCP server with tools/resources
│ ├── parser.py # .3mf file parsing
│ └── slicer.py # OrcaSlicer CLI wrapper
├── mcp_workspace/
│ ├── slice_output/ # Temporary slicer outputs
│ ├── fast_profile.ini
│ ├── balanced_profile.ini
│ └── strong_profile.ini
├── requirements.txt
├── pyproject.toml
└── README.mdError Handling
The server handles common errors gracefully:
CLI not found: Clear message to install OrcaSlicer
Invalid .3mf file: Validation error with helpful context
Slicer timeout: 120-second timeout with informative message
Missing printer profile: Warning logged, operation continues if possible
Logging
Logs are written to debug.log (not stdout) to avoid breaking MCP stdio communication.
Limitations
Does not modify
.3mffiles (read-only analysis)Does not handle multi-plate scenarios
Does not validate geometric constraints
Assumes serial printing (no multi-printer logic)
Development
Running Tests
# Install dev dependencies
pip install -e ".[dev]"
# Run tests (when implemented)
pytestProject Philosophy
Analysis and recommendation only. No file modification. Users manually apply settings in Bambu Studio based on recommendations.
License
[Add your license here]
Contributing
[Add contribution guidelines here]
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/SpunkyBlade/bambu-mcp-agent'
If you have feedback or need assistance with the MCP directory API, please join our Discord server