Skip to main content
Glama

Dollar-cost averaging vs. lump-sum calculator

calc_dca
Read-onlyIdempotent

Read-only educational calculator. Compares dollar-cost averaging versus lump-sum investing across market scenarios with configurable cadence and horizon. Returns a result from caller-supplied public inputs without changing page or account state, accessing BetterOff customer data, or providing personalized financial advice.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
cadenceNoContribution cadence — How often the calculator makes an equal DCA purchase.monthly
endPriceNoEnd price — The price used to value both strategies at the end.
scenarioNoMarket scenario — A simplified price path for comparison, not a market forecast.bull
startPriceNoStart price — The price used for the lump-sum purchase and the first DCA purchase.
cashYieldPctNoAnnual yield on uninvested cash — Yield earned while cash waits for later DCA purchases.
horizonYearsNoHorizon (years) — How long DCA takes to invest the full amount.
volatilityPctNoIllustrative path swing (%) — Controls a deterministic sine-shaped price swing. It is not statistical volatility or a forecast.
feePerPurchaseNoFee per purchase — A flat trading fee deducted from every scheduled purchase.
totalInvestmentNoTotal investment — The same total is invested all at once or divided across the DCA schedule.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already declare readOnlyHint, idempotentHint, and destructiveHint=false, but the description adds meaningful behavioral context: no page or account state changes, no BetterOff customer data access, and no personalized financial advice. It also clarifies the tool is educational and returns results from caller-supplied public inputs. This goes well beyond the structured annotations.

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 three short, front-loaded sentences with no filler. It leads with read-only status and the core comparison, then adds privacy and non-advice caveats. It does not repeat parameter details already present in the schema.

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

Completeness5/5

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

For a 9-parameter calculator with full schema coverage, an output schema, and strong annotations, this description provides the necessary context: educational, read-only, non-personalized, and based on public inputs. Nothing essential for correctly invoking the tool is missing.

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%, and every parameter already has a clear description, so the schema does the heavy lifting. The description only highlights cadence and horizon, which adds no new semantic meaning beyond what the schema provides. A baseline 3 is appropriate.

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 a specific verb ('Compares') and names the exact subject: dollar-cost averaging versus lump-sum investing. It also scopes the tool to market scenarios, cadence, and horizon, which cleanly distinguishes it from the many other calc_* siblings. The read-only educational framing reinforces what the tool is for.

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

Usage Guidelines3/5

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

The use case is strongly implied: an agent can infer this tool is for comparing DCA vs. lump-sum investing. However, the description never states when not to use it or names any alternative such as run_public_calculator or compare_public_scenarios. Guidance is left to inference rather than made explicit.

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
Disambiguation2/5

The 14 calc_* tools are individually distinct, but run_public_calculator and compare_public_scenarios overlap with all of them, making it unclear when to use a specific calculator versus the generic runner. list_public_calculators and search_public_docs also have somewhat fuzzy boundaries.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern (calc_*, list_*, get_*, search_*, compare_*, run_*), with no mixed casing or irregular verb styles.

Tool Count3/5

At 22 tools, the set is on the heavy side and falls in the borderline 16–25 range. While most calculators earn their place, the generic run_public_calculator and compare_public_scenarios duplicate functionality already covered by the calc_* tools, inflating the count.

Completeness5/5

The surface covers a broad personal-finance calculator domain plus discovery, contract introspection, running, comparing, docs, pricing, and feature details. For a read-only educational server, there are no obvious gaps or dead ends.

Resources