Skip to main content
Glama

solve_dilution

Read-only

Solve C₁V₁ = C₂V₂ for whichever of the four quantities is left empty (stock concentration, stock volume, final concentration, final volume), each in its own unit: molar (M to fM), mass per volume (mg/mL to ng/mL), fold (X) or percent. Returns all four, the fold and the diluent volume to add. Refuses a 'dilution' that would raise the concentration, and two concentrations of different dimensions.

Input Schema

NameRequiredDescriptionDefault
_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.
_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.
final_volumeNofinal volume (V₂). Leave exactly one of the four quantities empty: that one is calculated.
stock_volumeNostock volume (V₁). Leave exactly one of the four quantities empty: that one is calculated.
final_volume_unitNothe unit of the final volume, given or solved.mL
stock_volume_unitNothe unit of the stock volume, given or solved.µL
final_concentrationNofinal concentration (C₂). Leave exactly one of the four quantities empty: that one is calculated.
stock_concentrationNostock concentration (C₁). Leave exactly one of the four quantities empty: that one is calculated.
final_concentration_unitNothe unit of the final concentration, given or solved.µM
stock_concentration_unitNothe unit of the stock concentration, given or solved.mM

Output Schema

NameRequiredDescriptionDefault
foldYesC₁/C₂, how many times the stock is diluted
unitYesthe solved quantity's unit
valueYesthe solved quantity, in its own unit
solvedYeswhich quantity was solved, by its parameter name
diluentYesV₂ − V₁, the diluent to add, in V₂'s unit

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/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 the safety profile is covered. The description adds genuine behavior beyond that: it returns all four quantities plus the fold and the diluent volume to add, and it declares two input-validation failures. Missing is anything about numeric edge cases (zero volume, unit mismatch messages) but the disclosure is well above the annotation baseline.

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?

Two sentences, front-loaded with the equation and the solve rule, then units, then return payload, then refusals. No filler and no restatement of the tool name.

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

Completeness4/5

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

An output schema exists, so return values need little explanation, yet the description still summarizes them usefully. The gap is the nested _files/_subject record parameters, which the description never mentions at all — an agent gets no hint why a sequence record accompanies a dilution calculation. Everything else an agent needs to call it correctly is present.

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

Parameters4/5

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

Schema coverage is 100%, so the baseline is 3. The description earns more by explaining the joint constraint across the four quantities and by making clear that each quantity carries its own independent unit, which is the one non-obvious semantic in a 10-parameter schema with four enums.

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?

States a specific verb and resource: solves C₁V₁ = C₂V₂ for whichever of the four quantities is left empty, naming each of them (stock concentration, stock volume, final concentration, final volume). It also enumerates the supported unit families and distinguishes itself from any generic calculator by its refusal rules.

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 operative usage rule ('for whichever of the four quantities is left empty') is stated up front, and two explicit when-not conditions are given: it refuses a dilution that would raise the concentration, and refuses two concentrations of different dimensions. It does not point at any sibling alternative (e.g. plan_master_mix), so it stops short of a full 5.

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