run_gel_plate
Run a multi-lane virtual agarose gel and return its READING, not just its bands: how many lanes carrying how many bands over what range, positioned by which ladder, plus only the cautions this plate earned — a lane running off the top or bottom of the reference ladder entirely (no mark to interpolate against, so the position is the calibration curve extrapolated), a band inside the ladder but outside the resolving window of the agarose percentage cast, two fragments co-migrating as one drawn band, a DNA form the chosen law cannot move, an empty lane, and a refused calibration.
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": {
"lanes": "<lanes>"
},
"name": "run_gel_plate"
}
}Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| form | No | the DNA topology a lane runs at when its bands do not carry one. Only moves a band under a concentration law: ladder-calibrated migration reads every band off the ladder's own curve, and the reading says so rather than leaving the setting silently inert. Advanced. | linear |
| lanes | Yes | the lanes, in edge order — each a `[bp, form]` band list, which is exactly what `run_gel_lane` emits. A bare list of fragment lengths is also accepted and runs at the plate `form`. Several wires land here. | |
| _files | No | The project: record references shaped like _subject. Their records become library documents a tool names in sequences/parts/document; a trace or alignment is found by file name. | |
| ladder | No | the reference ladder drawn beside the samples, and what "off the scale" is measured against. Values: generuler_1kb_plus (GeneRuler 1 kb Plus (75–20,000)), hi_lo (Hi-Lo DNA Marker (50–10,000)), generuler_1kb (GeneRuler 1 kb (250–10,000)), generuler_100bp (GeneRuler 100 bp (100–3,000)), generuler_100bp_plus (GeneRuler 100 bp Plus (100–3,000)), thermo_1kb_plus (Thermo 1 Kb Plus (100–15,000)), neb_1kb (NEB 1 kb (500–10,000)), neb_100bp (NEB 100 bp (100–1,517)), lambda_hindiii (Lambda DNA / HindIII (125–23,130)), penn_state (PennState (500–10,000)). | generuler_1kb_plus |
| _subject | No | The record to act on: exactly one of sequence, accession (+source), sample (an id from list_samples) or file ({name, text} or {name, base64}); record_index picks one record of several. | |
| lane_names | No | a name per lane, in the same order. Unnamed lanes become `Lane 1`, `Lane 2`, … — the reading names the lane every caution is about, so a plate of unnamed lanes still says which one is off scale. | |
| render_mode | No | how the plate would be drawn. Echoed into the derivation chain because a raster merges what bands separate, so the reading is about a different picture. Advanced. | bands |
| mobility_model | No | which empirical agarose-% mobility law — helling-goodman-boyer (Helling–Goodman–Boyer (default)) · rill-van-winkle (Rill/Van Winkle). Values: helling-goodman-boyer (Helling–Goodman–Boyer (default)), rill-van-winkle (Rill/Van Winkle). Only applies when agarose_percent is set. Advanced. | helling-goodman-boyer |
| agarose_percent | No | the casting percentage, which activates a concentration law and a resolving window. LEAVE UNSET for the bench's own default: ladder-calibrated migration, interpolated on the ladder's measured curve with no concentration term. In %. |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| bands | Yes | every placed band: lane, length in bp, Rf and migration on the shared coordinate system, and whether this gel can measure it | |
| cautions | Yes | only the cautions this plate earned, each carrying the measurement that produced it and naming the lane it is about. Empty when every band is measurable | |
| conclusion | Yes | the one-sentence reading, generated from this run: lanes, bands, the size range they span, and the ladder that positioned them | |
| derivation | Yes | the machinery, one row per fact: what placed the lanes, the ladder that calibrated them and whether its curve is its own or borrowed, the resolving window, each lane`s DNA form, and how the plate is drawn | |
| calibratedBy | Yes | the ladder whose measured curve positioned every lane — which is NOT always the ladder drawn: 2 of the 10 built-ins carry (bp, Rf) points, and a gel showing one of the other 8 is positioned on the default curve | |
| unmeasurable | Yes | per lane, the two failures kept apart because different actions fix them: `offScale` (outside the reference ladder entirely — read it off the table) and `outOfWindow` (inside the ladder, outside this percentage`s resolving range — cast a different gel) |