Skip to main content
Glama

Jean — Molecular Biology & Genomics

auto_gate_flow_cytometry

Read-only

openCyto 2.24's automated gates on two channels of an FCS file: a cut on each axis (gate_mindensity, the minimum of the KDE between its two highest peaks; gate_mindensity2, features of a smoothing spline over the KDE; or gate_quantile), the sequential quadrant gate (gate_quad_sequential), and the singlet gate on area × height (gate_singlet, a Huber regression and its prediction band).

Input Schema

NameRequiredDescriptionDefault
ANoadditional negative decades. Only applies when scale is logicle or hyperlog or flowcore-logicle or fasinh.
MNodecades of the full scale. Only applies when scale is logicle or hyperlog or flowcore-logicle or fasinh.
TNotop of scale; empty means the file's largest fluorescence $PnR.
WNolinear width in decades. Only applies when scale is logicle or hyperlog or flowcore-logicle.
cutNothe one-dimensional gate placed on each axis. Values: none (none), mindensity (minimum density), mindensity2 (spline features), quantile (quantile).mindensity
quadNoalso fit the sequential quadrant gate.
seedNoR set.seed for the subsample.
probsNoquantile: the quantile the cut sits at.
scaleNothe display scale of the fluorescence channels (scatter and time stay linear): used for the plot, the threshold and, with `stats_on: scaled`, the statistics. Values: logicle (Logicle (Gating-ML 2.0, Moore & Parks)), fasinh (ArcSinh (Gating-ML 2.0 fasinh)), arcsinh (ArcSinh with a cofactor (asinh(x / c), Cytobank and CyTOF)), hyperlog (Hyperlog (Gating-ML 2.0, Bagwell)), flowcore-logicle (Logicle on a 0–M axis (flowCore)), wsp-biex (Biex (FlowJo 10, channels 0–4096)), flin (Linear (Gating-ML flin)).logicle
_filesNoThe 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.
adjustNoKDE bandwidth multiplier (openCyto's adjust).
gatingNoa Gating-ML 2.0 document in the project, by name or id; empty for no gating (every statistic is then of all events).
plot_xNochannel (PnN or PnS) on the density plot's x axis; empty for no plot.
plot_yNochannel on the plot's y axis.
derivedNoderived parameters, `name = expression` separated by `;` (FlowJo's vocabulary: channels by name or [name], + − * / % ^, abs ceil floor neg round max min pow exp ln log sqrt and the trig functions); each becomes a channel of the run.
singletNoalso fit the singlet gate.
_subjectNoThe 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.
cofactorNothe c in asinh(x / c): 5 is the CyTOF convention, 150 a common one for fluorescence. Only applies when scale is arcsinh.
documentNothe FCS file, by name or id; may be left empty when the project holds exactly one.
positiveNomindensity: keep the side above the cut.
biex_widthNoFlowJo biex width basis (negative; FlowJo's default -10). Only applies when scale is wsp-biex.
wider_gateNoweight the band's ends by the extreme events' Huber weights.
compensationNo`auto`: the file's own $SPILLOVER/$SPILL when it has one, else none; `file`: that, refusing a file without one; `none`: leave the values as acquired. Values: auto (automatic), file (file's own matrix), none (none).auto
singlet_areaNoarea channel of the singlet gate; empty for FSC-A.
biex_negativeNoFlowJo biex extra negative decades. Only applies when scale is wsp-biex.
subsample_pctNofit the singlet gate on this fraction of events; empty for every event.
singlet_heightNoheight channel of the singlet gate; empty for FSC-H.
plot_populationNothe population plotted; empty for all events.
prediction_levelNothe prediction band level of the singlet polygon.
compensation_methodNowhich published algorithm: FlowKit's solve(Sᵀ, Xᵀ) or flowCore's X · S⁻¹. They agree to ~1e-15 of full scale. Values: flowkit (solve(Sᵀ, Xᵀ) (FlowKit)), flowcore (X · S⁻¹ (flowCore)). Only applies when compensation is auto or file.flowkit

Output Schema

NameRequiredDescriptionDefault
cutsYesper axis: the cut, events at or above and at or below it, the rule that chose it, the KDE peaks and valleys
singletYesthe singlet polygon in (area, height), its coefficients, residual scale, seed and events inside
quadrantsYesthe three cuts, which axis was cut first, and events per quadrant

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

B3.1/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so safety is covered, and an output schema means return shape need not be described. What the description adds is genuine algorithmic context (mindensity = minimum of the KDE between the two highest peaks, singlet = Huber regression plus prediction band), but it says nothing about what the fitted gates are attached to, whether plotting or compensation alter behaviour, or how the subsample/seed affect determinism.

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

Conciseness3/5

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

A single dense sentence with nested parentheticals that front-loads the resource correctly, but the four-way parenthetical enumeration of algorithm internals is expensive to parse and displaces cheaper, more useful content such as when to call it. Nothing is strictly redundant, yet the structure is a method catalogue rather than agent-oriented guidance.

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

Completeness3/5

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

For a 30-parameter tool with an output schema and full annotation coverage, the description is adequate on the core gating behaviour but silent on the scale/compensation/plotting/derived-parameter surface and on how the `gating` document relates to the newly fitted gates. An agent can call it with defaults, but not confidently configure it for anything beyond the simplest case.

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 schema already documents all 30 parameters including defaults, ranges and enum meanings, giving a baseline of 3. The description contributes modest extra meaning by explaining what each `cut` value actually computes and that the singlet gate operates on area × height, which ties singlet_area/singlet_height together, but it does not touch scale, compensation, derived parameters or plotting.

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

Purpose4/5

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

Names a specific verb and resource: automated openCyto 2.24 gates fitted on two channels of an FCS file, and enumerates the three gate families it produces (per-axis cut, sequential quadrant, singlet). An agent can tell it is a gating step rather than a QC or clustering step, but the description never contrasts it with near siblings like analyze_flow_cytometry, gate_droplets or cluster_flow_cytometry_flowsom, so differentiation is left to inference.

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

Usage Guidelines2/5

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

The text is entirely 'what it computes' with no 'when to use it': no prerequisites, no mention of required inputs beyond 'an FCS file', and no conditions under which a sibling should be preferred instead. An agent must already know the flow-cytometry pipeline vocabulary to decide to call this rather than analyze_flow_cytometry.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources