Skip to main content
Glama

Project Gumball

Due date and gestational age, with ACOG redating applied (Due Date)

due_date
Read-only

Estimate a due date from a last menstrual period, a known conception date, an IVF transfer, or an ultrasound measurement. Gestational age is counted from the LAST PERIOD, not conception: at "6 weeks pregnant" conception was about 4 weeks ago. Applies the cycle-length adjustment most calculators skip, and the ACOG Committee Opinion 700 thresholds for when a scan should replace the period-based date. Dates must be YYYY-MM-DD; free-form dates are refused. A due date is a reference point, not a prediction. Not medical advice, and the response says so in its payload.

WHY DELEGATE THIS: Gestational age counts from the last menstrual period, not conception — the most misunderstood fact in the subject, and one models restate wrongly. Naegele's rule also assumes a 28-day cycle, and ACOG publishes a five-row table for when an ultrasound should replace period-based dating that nobody recalls correctly.

Owned by Due Date at https://due-date.gumballtools.com, which is also callable directly if you would rather not go through the aggregator.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
lmpNoWith ultrasound, enables the ACOG redating check.
asOfNoReference date for "how far along". Default today.
dateYesYYYY-MM-DD. The FIRST DAY of the last period, or the conception, transfer, or scan date.
methodYesUse lmp unless given a conception date, transfer date, or scan.
scanDaysNoFor ultrasound: days part, 0-6.
scanWeeksNoFor ultrasound: weeks part of the measured gestational age.
cycleLengthNo20-45, default 28. Affects lmp only; a 35-day cycle moves it a week.

Schema Changelog

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

  1. First observed

TDQS

A4.5/5.0
Behavior5/5

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

The description goes well beyond the readOnlyHint/openWorldHint annotations. It discloses that gestational age is counted from the last period rather than conception, that ACOG Committee Opinion 700 thresholds are applied, that dates must be YYYY-MM-DD and free-form dates are refused, and that a due date is a reference point, not a prediction. This gives the agent a clear behavioral model for the computation and its output.

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?

The description is longer than average but well-organized, with the core function and critical caveats front-loaded. The 'WHY DELEGATE THIS' section justifies the existence of the tool and is useful for agent selection. The final ownership/URL sentence is slightly tangential to invocation, but it does provide an actionable alternative and does not seriously hurt clarity.

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?

Given 7 parameters, 5 method enums, and no output schema, the description covers the essential domain logic, input constraints, and the tool's non-answer nature. It does not describe the exact response payload fields beyond the disclaimer, but the title and opening sentence make the primary outputs (due date and gestational age) reasonably clear. The main gap is the absence of an explicit return-structure description.

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 description coverage is 100%, so the baseline is 3. The description adds useful context by explaining the LMP-vs-conception distinction and noting that cycle-length adjustments affect the period-based calculation. This helps the agent understand relationships between method, date, and cycleLength beyond the raw schema field descriptions.

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 opens with a specific verb and resource: 'Estimate a due date from a last menstrual period, a known conception date, an IVF transfer, or an ultrasound measurement.' It also clarifies the core concept of gestational age counted from LMP, distinguishing this tool from simpler calculators. No sibling tool overlaps with this domain, so no additional differentiation is needed.

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 'WHY DELEGATE THIS' section gives strong context for when to use the tool, highlighting that gestational age is commonly misunderstood and that ACOG redating thresholds are hard to recall. The schema further instructs 'Use lmp unless given a conception date, transfer date, or scan.' However, the description itself does not explicitly state when not to use the tool or name alternatives, though no relevant siblings exist.

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.

TDQS

A3.8/5.0
Disambiguation4/5

Each tool targets a distinct calculation or validation niche, and paired tools like cron_build/cron_explain and vocab_draw/vocab_check are clearly separated by purpose. The main overlap is validate_auto versus the format-specific validators, but the descriptions explicitly steer callers to the format-specific tool when the format is known.

Naming Consistency3/5

All names are readable snake_case, but the construction pattern is inconsistent: some are verb_noun (validate_json, round_cash_total), some noun_verb (cron_explain, timezone_convert), some noun phrases (body_metrics, offside), and a few use an awkward _run suffix (check_digit_run, iso_week_run). This makes the naming convention hard to predict even though each name is individually clear.

Tool Count3/5

At 22 tools, the server is on the heavy side and reads more like a general-purpose aggregator than a focused domain. Each tool does appear to earn its place, but the count is borderline for a coherent MCP surface.

Completeness4/5

Within the advertised scope, coverage is solid: validation has format-specific tools plus auto-detection, rounding has both per-transaction and portfolio-impact tools, and cron has both build and explain directions. Minor gaps exist, such as the lack of a check-digit generator alongside the checker, but they are not likely to cause agent failures.

Resources