Skip to main content
Glama

Atlarium Habitat Database MCP

Calculate tank weight

calculate_tank_weight
Read-onlyIdempotent

Calculate advisory aquarium weight estimates from dimensions and material inputs.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
shapeYesTank shape: rectangular, cylindrical or bow-front.
width_cmNoTank width in centimeters.
height_cmNoTank height in centimeters.
length_cmNoTank length in centimeters.
diameter_cmNoCylinder diameter in centimeters.
bow_depth_cmNoCurved front depth in centimeters for bow-front tanks.
water_height_cmNoActual filled water height in centimeters.
glass_thickness_mmNoGlass thickness in millimeters for net volume estimates.
substrate_depth_cmNoSubstrate depth in centimeters.
equipment_weight_kgNoAdditional equipment weight in kilograms.
hardscape_weight_kgNoHardscape weight in kilograms.
glass_weight_override_kgNoKnown glass weight override in kilograms.
water_density_kg_per_literNoWater density in kilograms per liter.
substrate_weight_override_kgNoKnown substrate weight override in kilograms.
hardscape_displacement_litersNoEstimated hardscape displacement in liters.
substrate_density_kg_per_literNoSubstrate density in kilograms per liter.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYes
toolYes

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed2 schema fields changed
    • removedOutput schema / properties / generated_at
      Removed value: -{
      -  "type": "string"
      -}
    • changedOutput schema / required
      Previous value: -[
      -  "data",
      -  "generated_at",
      -  "tool"
      -]New value: +[
      +  "data",
      +  "tool"
      +]
  2. Changed16 schema fields changed
    • addedInput schema / properties / bow_depth_cm / description
      Added value: +"Curved front depth in centimeters for bow-front tanks."
    • addedInput schema / properties / diameter_cm / description
      Added value: +"Cylinder diameter in centimeters."
    • addedInput schema / properties / equipment_weight_kg / description
      Added value: +"Additional equipment weight in kilograms."
    • addedInput schema / properties / glass_thickness_mm / description
      Added value: +"Glass thickness in millimeters for net volume estimates."
    • addedInput schema / properties / glass_weight_override_kg / description
      Added value: +"Known glass weight override in kilograms."
    • addedInput schema / properties / hardscape_displacement_liters / description
      Added value: +"Estimated hardscape displacement in liters."
    • addedInput schema / properties / hardscape_weight_kg / description
      Added value: +"Hardscape weight in kilograms."
    • addedInput schema / properties / height_cm / description
      Added value: +"Tank height in centimeters."
    • addedInput schema / properties / length_cm / description
      Added value: +"Tank length in centimeters."
    • addedInput schema / properties / shape / description
      Added value: +"Tank shape: rectangular, cylindrical or bow-front."
    • addedInput schema / properties / substrate_density_kg_per_liter / description
      Added value: +"Substrate density in kilograms per liter."
    • addedInput schema / properties / substrate_depth_cm / description
      Added value: +"Substrate depth in centimeters."
    • addedInput schema / properties / substrate_weight_override_kg / description
      Added value: +"Known substrate weight override in kilograms."
    • addedInput schema / properties / water_density_kg_per_liter / description
      Added value: +"Water density in kilograms per liter."
    • addedInput schema / properties / water_height_cm / description
      Added value: +"Actual filled water height in centimeters."
    • addedInput schema / properties / width_cm / description
      Added value: +"Tank width in centimeters."
  3. Added

TDQS

A3.5/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 idempotentHint=true, so the agent knows this is a safe, read-only operation. The description adds the term 'advisory', indicating the output is an estimate rather than exact, which is useful. However, it does not disclose calculation assumptions, limitations, or how the shape parameter affects required inputs beyond what the schema already provides.

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?

The description is a single sentence of ten words, front-loaded with the verb 'Calculate'. Every word is informative and there is no redundancy or filler. It is optimally concise.

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?

The tool has 16 parameters and a shape enum that determines which measurements are relevant, but the description does not explain this conditional complexity. However, the output schema exists and each parameter has a description, so the agent can infer usage from the schema. The description is minimally complete but could benefit from explaining that certain parameters apply only to specific shapes, which is a notable gap.

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 coverage is 100%, with each of the 16 parameters having a descriptive comment. The tool description only summarizes inputs as 'dimensions and material inputs', which adds no new meaning beyond the schema. Baseline 3 is appropriate because the schema carries the full burden of parameter semantics.

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 description uses the specific verb 'calculate' with the resource 'tank weight' and qualifies it as 'advisory estimates' from 'dimensions and material inputs', clearly distinguishing it from sibling tools like calculate_tank_volume. The purpose is immediately apparent and unambiguous.

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 description does not specify when to use this tool versus alternatives such as calculate_tank_volume or calculate_water_chemistry. It only implies usage for weight estimation, but there is no explicit guidance on selection criteria, prerequisites, or cases where another tool is more appropriate.

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.