Skip to main content
Glama

print_3mf_bambu_network

Print 3MF files to Bambu Lab printers via the restored BambuNetwork path, with auto-slicing for unsliced files and support for cloud or LAN connections.

Instructions

Print a 3MF through FULU OrcaSlicer-bambulab's restored BambuNetwork path instead of the MCP LAN MQTT/FTPS path.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
three_mf_pathYesPath to the 3MF file to print; unsliced 3MFs are auto-sliced before sending.
bambu_modelYesREQUIRED: Bambu Lab printer model. Ask the user if not known. Using the wrong model can damage the printer.
connection_typeNoBambuNetwork connection type to put in FULU PrintParams; cloud uses restored internet printing, lan uses local bridge printing.
bambu_network_methodNoFULU print method to invoke; defaults to start_print for cloud and start_local_print for lan.
dev_idNoBambu device id used by BambuNetwork; defaults to BAMBU_DEV_ID or BAMBU_SERIAL.
dev_ipNoPrinter IP address for LAN/local bridge methods; defaults to host when provided.
hostNoPrinter host or IP address, used as dev_ip for LAN/local bridge methods.
bambu_serialNoFallback Bambu device id when dev_id is not supplied.
bambu_tokenNoPrinter access code/password for LAN/local bridge methods.
usernameNoPrinter username for LAN/local bridge methods; defaults to bblp.
passwordNoPrinter password/access code override for LAN/local bridge methods.
bed_typeNoBed plate type currently installed (default: textured_plate).
plate_indexNoZero-based plate index to print from the sliced 3MF; converted to FULU's one-based PrintParams plate_index.
project_nameNoOptional project name sent in FULU PrintParams; defaults to the 3MF filename without extension.
preset_nameNoOptional preset name sent in FULU PrintParams; defaults to project plus one-based plate index.
task_nameNoOptional BambuNetwork task name; defaults to the project name.
config_filenameNoOptional config 3MF path for cloud print; defaults to the same 3MF path.
bridge_commandNoOverride command for the FULU bridge host or macOS/WSL wrapper; defaults to BAMBU_NETWORK_BRIDGE_COMMAND.
bambu_network_config_dirNoConfig/log directory used by the BambuNetwork agent; defaults to BAMBU_NETWORK_CONFIG_DIR or a user config directory.
country_codeNoBambuNetwork country code, such as US, used by the agent during startup.
user_infoNoOptional BambuNetwork user_info JSON string to pass to net.change_user after the agent starts.
timeout_msNoBridge request timeout in milliseconds.
slicer_typeNoSlicer to use only if auto-slicing an unsliced 3MF; use orcaslicer-bambulab for FULU's fork.
slicer_pathNoPath to the slicer executable for auto-slicing; defaults to value from env or a platform default.
slicer_profileNoPath to an optional slicer profile/config file for auto-slicing.
nozzle_diameterNoNozzle diameter in mm for auto-slicing (default: 0.4).
use_amsNoWhether to use the AMS; defaults to auto-detect from the 3MF mapping.
ams_mappingNoAMS slot mapping array used by both local MCP printing and FULU PrintParams.
ams_slotsNoPer-used-filament AMS slot list, matching the local LAN print path.
ams_mapping_bridgeNoRaw JSON string override for FULU PrintParams ams_mapping when the automatic array is not enough.
ams_mapping2NoRaw JSON string for FULU PrintParams ams_mapping2, matching OrcaSlicer-bambulab's v1 AMS mapping field.
ams_mapping_infoNoRaw JSON string for FULU PrintParams ams_mapping_info, matching OrcaSlicer-bambulab's detailed AMS mapping field.
nozzle_mappingNoRaw JSON string for FULU PrintParams nozzle_mapping.
nozzles_infoNoRaw JSON string for FULU PrintParams nozzles_info.
bed_levelingNoEnable auto bed leveling in FULU PrintParams (default: true).
flow_calibrationNoEnable flow calibration in FULU PrintParams (default: true).
vibration_calibrationNoEnable vibration calibration in FULU PrintParams (default: true).
layer_inspectNoEnable first-layer inspection where supported (default: false for BambuNetwork bridge).
timelapseNoEnable timelapse recording in FULU PrintParams (default: false).
use_ssl_for_ftpNoWhether FULU local print should use SSL for FTP (default: true).
use_ssl_for_mqttNoWhether FULU local print should use SSL for MQTT (default: true).
external_change_assistNoEnable FULU PrintParams task_ext_change_assist for external filament change assistance.
try_emmc_printNoEnable FULU PrintParams try_emmc_print for printers that support internal storage printing.
extra_optionsNoRaw JSON string or text for FULU PrintParams extra_options.
client_job_idNoOptional client job id sent to the bridge; defaults to the current timestamp.
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden of behavioral disclosure. It only mentions the network path change but does not reveal important behaviors: that it initiates a print job (mutation), potential errors, required permissions, or expected latency. The detailed parameter descriptions mildly compensate, but the tool-level description is insufficient.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence (16 words) with zero wasted words. It perfectly achieves conciseness and structure.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness2/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Despite the rich parameter descriptions, the tool-level description fails to provide context about the overall operation, such as what happens after the print is sent (e.g., success/failure indicators, return status), error conditions, or integration with FULU system. For a complex print tool with 45 parameters and no output schema, this is a significant gap.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the baseline is 3. The tool description itself adds no parameter information; all semantics are in the schema. This meets the baseline but does not exceed it.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the action (Print), the resource (3MF), and the specific method (through FULU OrcaSlicer-bambulab's restored BambuNetwork path). It explicitly distinguishes this tool from its sibling 'print_3mf' by contrasting the network path, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description provides clear guidance on when to use this tool versus alternatives by specifying 'instead of the MCP LAN MQTT/FTPS path.' However, it does not explicitly state prerequisites or scenarios where this tool should be avoided, such as when BambuNetwork is unavailable.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

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/DMontgomery40/bambu-printer-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server