CentauriMCP
Provides tools for monitoring and controlling an Elegoo Centauri Carbon 3D printer, including temperature monitoring, print control, file listing, and camera access.
Click on "Deploy 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., "@CentauriMCPWhat is the current printer status?"
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.
CentauriMCP
A Model Context Protocol (MCP) server for safe, controlled remote operation of the Elegoo Centauri Carbon 3D printer.
⚠️ Safety First
This project provides controlled access to 3D printer operations with built-in guardrails:
Temperature monitoring - Auto-pause on thermal anomalies
Error detection - Monitors for filament runout, jams, motor failures
Rate limiting - Prevents rapid-fire commands
Audit logging - Every operation logged with timestamp and result
Pre-command validation - Verifies safe state before executing operations
Never leave a 3D printer unattended while printing. This tool assists with monitoring and control but does not replace proper safety practices.
Related MCP server: OrcaSlicer MCP
🎨 CANVAS Multi-Filament Support (CC1 Limitation)
Centauri Carbon (CC1) Firmware Limitation:
The CANVAS CC1 module filament slot configuration (colors, materials per slot) is not readable via the SDCP protocol on the original Centauri Carbon (CC1). This is a firmware design decision by Elegoo.
What works:
✅ CANVAS module connection detection (
AmsConnectStatus)✅ Filament runout/jam monitoring during prints
✅ Starting multi-filament prints (printer uses internal config)
✅ Video stream for visual monitoring
What doesn't work:
❌ Reading filament slot colors/materials via API
❌ Verifying which filament is in which slot programmatically
❌ Modifying slot configuration via API
Workaround: For multi-filament prints, verify slot configuration via:
Printer web UI:
http://192.168.1.41/network-device-manager/network/controlPrinter touchscreen menu
Video stream:
http://192.168.1.41:3031/video(shows physical spools)
Note: Centauri Carbon 2 (CC2) uses a different protocol (MQTT) that DOES expose filament slot data. This limitation applies only to CC1.
Features
Phase 1: Read-Only Monitoring ✅
Real-time printer status (temperatures, position, state)
Live camera feed access
File listing (available prints)
Print history retrieval
Error code monitoring
Phase 2: Controlled Operations 🚧
Pause/Resume/Stop print jobs
Start prints (with validation)
Fan speed control
Print speed adjustment
Architecture
Protocol: SDCP v3.0.0 (Smart Device Control Protocol) over WebSocket
Connection:
ws://{printer-ip}:3030/websocketLanguage: Python 3.10+
MCP SDK: TypeScript MCP SDK reference implementation
Installation
# Clone the repository
git clone git@github.com:zant0p/CentuariMCP.git
cd CentuariMCP
# Install dependencies
pip install -r requirements.txt
# Configure environment
cp .env.example .env
# Edit .env with your printer's IP addressConfiguration
Create a .env file with your settings:
# Printer Configuration
PRINTER_IP=192.168.1.41
PRINTER_PORT=3030
MAINBOARD_ID=000000000001d354
# Safety Limits
MAX_NOZZLE_TEMP=300
MAX_BED_TEMP=110
COMMAND_RATE_LIMIT_MS=2000
# Logging
LOG_LEVEL=INFO
LOG_FILE=centauri-mcp.logUsage
Running the MCP Server
python -m centauri_mcp.serverExample MCP Client Configuration
{
"mcpServers": {
"centauri": {
"command": "python",
"args": ["-m", "centauri_mcp.server"],
"env": {
"PRINTER_IP": "192.168.1.41"
}
}
}
}Available Tools
Once connected to an MCP client, you can use:
get_printer_status()- Current temperatures, position, stateget_camera_snapshot()- Live camera imagelist_files()- Available print filesget_print_history()- Historical print jobspause_print()- Pause current printresume_print()- Resume paused printemergency_stop()- Stop print immediatelystart_print(filename)- Start a print job (with validation)
API Reference
For detailed SDCP protocol documentation, see:
Security
SSH key-based authentication for Git access
No credentials stored in repository
Local network only (no cloud exposure)
Deploy keys scoped to this repository only
Development
Branch Strategy
main- Production-ready codedev- Active development and testing
Testing
# Run tests
pytest tests/
# Test WebSocket connection
python -m centauri_mcp.test_connectionKnown Issues
Protocol field names contain spelling errors (e.g.,
CurrenCoord,RelaseFilmState) - must use exact spellings from specVideo streaming limited to 1 concurrent connection by default
License
MIT License - See LICENSE file for details
Contributing
Fork the repository
Create a feature branch (
git checkout -b feature/amazing-feature)Commit your changes (
git commit -m 'Add amazing feature')Push to the branch (
git push origin feature/amazing-feature)Open a Pull Request to
devbranch
Built with ❤️ for safe 3D printer automation
Last updated: 2026-07-12
This server cannot be deployed
Maintenance
Related MCP Connectors
Securely control computers you explicitly pair through files, terminals, processes, screenshots, desktop UI/input, clipboard, browser automation, diagnostics, and document tools.
Egnyte's remote MCP server for secure AI access, search, upload and file management in your account.
Remote MCP for RunComfy: ComfyUI deployments, hosted models, LoRA training. 31 tools.
Remote MCP server for Web3TV creators — manage your account over MCP.
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceAn MCP server that enables AI agents to monitor and control an Elegoo Centauri Carbon 3D printer via local network, supporting status checks, snapshots, and print control.22Apache 2.0
- AlicenseAqualityAmaintenanceEnables headless slicing with OrcaSlicer, preset management, G-code analysis, and printer control over LAN for Klipper, OctoPrint, Prusa, Duet, Elegoo, and Bambu printers.152MIT
- AlicenseNot gradedqualityCmaintenanceMCP server for the Elegoo Centauri Carbon 3D printer that enables monitoring, control, and notifications via the SDCP 3.0 protocol over the local network.MIT
- FlicenseAqualityCmaintenanceEnables remote cloud control and live LAN camera access for Bambu Lab 3D printers through 31 MCP tools.31-