Get the FREE Ultimate OpenClaw Setup Guide →

bambu

a MCP server to allow you to monitor your Bambu Labs 3D printer from Claude Desktop

Installation
Run this command in your terminal to add the MCP server to Claude Code.
Run in terminal:
Command
claude mcp add --transport stdio shockedrope-bambu-mcp-server python /absolute/path/to/bambu_lab_mcp.py \
  --env BAMBU_PRINTER_IP="192.168.1.100" \
  --env BAMBU_ACCESS_CODE="12345678" \
  --env BAMBU_SERIAL_NUMBER="01P00A123456789"

How to use

This MCP server enables Claude Desktop to interact with a Bambu Lab P1P 3D printer over MQTT. It exposes tools to fetch real-time printer status, pause/resume or stop active prints, and adjust the print speed across multiple modes. Once configured, Claude can query status, check temperatures and progress, and issue print controls via natural language prompts. The server relies on environment variables for printer identification and authentication, ensuring secure local network communication with the printer.

To use it, install the Python-based MCP server, set the required environment variables (printer IP, access code, and serial number), and start the server. In Claude Desktop, reference the configured path to bambu_lab_mcp.py and provide the necessary environment values in your claude_desktop_config.json. You can then invoke tools like bambu_get_status, bambu_control_print, and bambu_set_speed to monitor and control your printer from Claude.

How to install

Prerequisites:

  • Python 3.10 or higher
  • Access to the Bambu Lab P1P printer on the same local network
  • Printer IP address, 8-character access code, and serial number

Step 1: Clone or download the MCP server files to a directory on your computer.

Step 2: Install Python dependencies

pip install -r requirements.txt

Step 3: Set up environment variables (choose one method):

  • Create a .env file in the project directory:
BAMBU_PRINTER_IP=192.168.1.100
BAMBU_ACCESS_CODE=12345678
BAMBU_SERIAL_NUMBER=01P00A123456789
  • Or export variables in your shell:
export BAMBU_PRINTER_IP="192.168.1.100"
export BAMBU_ACCESS_CODE="12345678"
export BAMBU_SERIAL_NUMBER="01P00A123456789"

Step 4: Test the server (optional)

python bambu_lab_mcp.py --help

Step 5: Configure Claude Desktop to run the server (see Claude Desktop Configuration in the README for exact JSON).

Additional notes

Tips and common issues:

  • Ensure LAN Mode is enabled on the printer and that the access code matches exactly (case-sensitive).
  • The environment variables are required for the MCP server to communicate with the printer; missing variables will trigger the 'Missing required environment variables' error.
  • The server connects to the printer over the local network only; there is no external data transfer.
  • If Claude Desktop cannot find or load the MCP server, verify that the claude_desktop_config.json path is absolute and that the Python path to bambu_lab_mcp.py is correct.
  • Permissions: ensure the bambu_lab_mcp.py file is readable (chmod +r) and that Python is accessible from the command line.

Related MCP Servers

Sponsor this space

Reach thousands of developers