route_print_job
Choose a suitable available printer for a print job based on material, availability, queue, history, and prior version results, then explain the choice or refuse if none can take it.
Instructions
Route a print job to the best available printer in the fleet.
Picks the registered printer best suited to this print -- the
material, whether it is free, its queue and how its prints have
gone -- and answers the pick, the other candidates in order, best
first, and ``why``: a sentence saying why the pick won. When the
file is a print of a kept design version -- named in
``version_id``, or resolved from the file the way the print's own
record resolves it -- each printer is also judged by its own
settled results printing THAT version on this computer, which
``why`` says in counts; a printer that never printed the version
has no history with it, never a bad one, and a printer marked
needs repair (``set_machine_repair``) is not a choice. Every
candidate carries the facts Kiln read about it and a ``plate``
block -- whether the plate as it stands has room for this part
and how a print there would start. A machine with no room, a
plate Kiln has no record of, or a hotend the start would refuse
the material on (it cannot reach the material's printing
temperature), is never recommended; when none can take the print
the answer is a refusal with each machine's own sentence:
``MATERIAL_EXCEEDS_HOTEND`` when no printer can melt the material
(with ``runs_in_fleet``, the filaments each printer runs on its
stock hotend, the closest filaments the fleet can melt and a
route planned for the first), else ``NO_ROOM``.
Args:
file_path: Path to the file to print.
material: Required filament material (e.g. "PLA", "PETG").
quality: Quality preference — "draft", "standard", or "fine".
priority: Job urgency — "low", "normal", or "high"; "high"
favours a printer that can start now, beside a part
still on its plate included.
version_id: The kept design version this file is a print of,
when the caller knows it. Left out, Kiln resolves it
from the file itself (a file it sliced here, or a kept
model's own bytes) or routes without one.
Tool call template
Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.
{
"id": 1,
"jsonrpc": "2.0",
"method": "tools/call",
"params": {
"arguments": {
"file_path": "<file_path>",
"material": "<material>"
},
"name": "route_print_job"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| quality | No | Quality preference — "draft", "standard", or "fine". | |
| material | Yes | Required filament material (e.g. "PLA", "PETG"). | |
| priority | No | Job urgency — "low", "normal", or "high"; "high" favours a printer that can start now, beside a part still on its plate included. | |
| file_path | Yes | Path to the file to print. | |
| version_id | No | The kept design version this file is a print of, when the caller knows it. Left out, Kiln resolves it from the file itself (a file it sliced here, or a kept model's own bytes) or routes without one. |