Skip to main content
Glama

In Da Mix

How many fills the banks give

fills_from_bank
Read-onlyIdempotent

How many identical fills the source banks give before a bank can't supply the next one, and why it stops (bank down to the minimum pressure, or it can't decant high enough without a booster). Every tank is assumed to start the same (start_pressure / mix). Use for "how many tanks can I fill with NX32 from my 50 L O2 bank at 180 bar", "how many trimix fills can I make", "koliko boca mogu napuniti", "za koliko punjenja imam kisika". Answer: the number of complete fills, the banks and the start of each tank, the bank that limits it, the bank pressures after, and why one more fill isn't possible; say that every fill is assumed to start the same. Then ask whether to see what a booster or an extra bank would add.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
howNopartial_pressure: add pure He and O2 to the tank, then top up with air. continuous: He / O2 go into the compressor intake (a premix stream).partial_pressure
banksNoSource banks (storage cylinders). Any bank not given is taken from the In Da Mix settings and listed in `assumed`.
methodNoCalculation method (equation of state), as in the app. Default from the In Da Mix settings (see list_methods for the current default); listed in `assumed`. IDEAL_GAS_DALTON is the simple ideal-gas method; DIVESOFT_REAL_GAS also plans the decant from the banks.
languageNoLanguage of the texts in the answer: en (English) or hr (Croatian). Use the user's language.en
mix_typeYesnitrox, trimix, heliair, heliox, or top_up (a ready-made supply gas from the top-up bank).
dive_modeNoOpen circuit (OC) or closed-circuit rebreather (CCR). Sets which defaults apply (from the In Da Mix settings: ppO2, END, density, O2 narcotic). The values used are listed in `assumed`.OC
max_fillsNoStop counting here.
depth_unitNoUnit of every depth in the question and the answer.m
temperatureNoFill-site (ambient) temperature, in temperature_unit. Default from the In Da Mix settings; listed in `assumed`.
use_boosterNoA gas booster is available: banks that can't decant high enough are boosted. With DIVESOFT_REAL_GAS it changes the plan; with other methods it only plans the gas.
helium_firstNoPartial pressure: add helium before oxygen (trimix, heliox).
include_stepsNoAlso return the app's ƒx steps ("How this was calculated"): every formula with its numbers. Long: only when the user asks how it was calculated.
pressure_unitNoUnit of every pressure in the question and the answer.bar
tank_volume_lNoWater volume of the tank being filled, litres (a twin 12 = 24). Used for gas litres and bank use.
start_pressureNoPressure already in the tank, in pressure_unit. 0 = empty. This changes the result a lot: if the user did not give it, ask before calling. If you call without it, the tool assumes an empty tank and lists that in `assumed`.
heat_correctionNoCorrect for the heating of the gas while filling.
target_pressureYesFill pressure wanted, in pressure_unit (e.g. 200 or 232 bar, 3000 psi).
start_he_percentNoHe percent of the gas already in the tank.
start_o2_percentNoO2 percent of the gas already in the tank (21 for air).
temperature_unitNoUnit of the fill temperature.C
min_bank_pressureNoA bank isn't used below this pressure (regulator / compressor intake / booster inlet), in pressure_unit. Default 10 bar.
supply_he_percentNoHe percent of the supply gas.
supply_o2_percentNoO2 percent of the ready-made supply gas (20.9 for air, 32 for EAN32).
target_he_percentNoHe percent of the mix wanted (trimix, heliair, heliox).
target_o2_percentNoO2 percent of the mix wanted (nitrox, trimix, heliox).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Annotations already declare readOnly/idempotent/non-destructive, so the safety profile is covered; the description adds genuinely new context: the uniform-start assumption, the fact that unspecified values are reported in `assumed`, and what the answer will contain. It doesn't discuss runtime behavior such as how long a 500-fill scan takes or error conditions, keeping it at a solid 4 rather than 5.

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

Conciseness4/5

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

Purpose is front-loaded in the first sentence, and the examples plus answer-format sentence follow logically. There is mild redundancy in stating the uniform-start assumption twice (in the preamble and again in the answer instruction), and the response-format sentence is long, but nothing is wasted.

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?

For a 25-parameter tool with no output schema, the description compensates by spelling out the returned content (fill count, limiting bank, resulting pressures, why one more fill fails) and by instructing the follow-up offer. That covers the main gaps; it still doesn't mention error handling or how the `assumed` fallbacks should be surfaced to the user beyond a brief note.

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% across all 25 parameters, including the critical note on start_pressure, so the schema already carries the semantics. The description only adds that start_pressure and the mix define the assumed tank start; that is marginal over what the schema documents, so the baseline 3 applies.

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 opening sentence states a specific verb, resource and scope: counting how many identical fills the source banks can supply before one can't supply the next. It also gives the stopping condition (bank hits min pressure, or can't decant high enough without a booster), which cleanly distinguishes it from siblings like decant (which plans the transfer itself) and gas_usage.

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?

It supplies concrete trigger phrasing in two languages ("how many tanks can I fill with NX32", "how many trimix fills can I make", "koliko boca mogu napuniti"), so an agent can match user intent reliably. It never names a sibling alternative or a when-not-to-use case (e.g. when the user actually wants the decant plan, use DIVESOFT_REAL_GAS or decant), so it stops short of a 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