Skip to main content
Glama

BTC DCA Engine

Run a DCA plan

run_dca
Read-onlyIdempotent

Simulate one dollar-cost-averaging plan against real historical closes. Returns totals, end-of-year checkpoints and a share_url that opens the same run in the app.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
typeNo"dca" repeats on the schedule; "lump-sum" buys once at the start. Default "dca".
as_ofNoPin the answer to this data vintage so the share link keeps returning the same number.
assetYesAsset key from list_assets, e.g. "btc_daily", "Ethereum", "S&P 500".
amountYesUSD per contribution, or the single amount for lump-sum.
includeNo
end_dateNoWindow end. Defaults to the last loaded close, never a relative "today".
settingsNoChart overlays carried into share_url, and the figures they add to each summary. Flags marked "Pro only" need a signed-in Pro account or a Pro API key; refused otherwise, and the refusal says what unlocks them.
frequencyNoContribution cadence. Default "monthly". Quarterly is the coarsest offered: wider gaps behave like a few lump sums (see the knowledge base, "The gap between buys").
start_dateYesFirst scheduled contribution.
wait_periodsNoSave this many scheduled contributions as cash before the first purchase.
last_buy_dateNoStop buying here and hold to end_date.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and idempotentHint=true, so the safety profile is covered. The description adds meaningful behavioral context: it returns a share_url, pins to a data vintage via as_of, and the schema notes that end_date 'Defaults to the last loaded close, never a relative today.' The description also discloses that Pro-only flags are refused without a Pro account. This goes beyond the annotations and helps an agent predict side effects and constraints.

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, dense sentence that front-loads the core action and then lists the key outputs. Every phrase earns its place: 'real historical closes' sets expectations, and the three return artifacts are concrete. No filler or repetition of schema details.

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 complex tool with 11 parameters, nested objects, and no output schema, the description is reasonably complete: it names the return shape (totals, checkpoints, share_url) and the schema covers the rest. It does not describe the full output structure, but with no output schema, an agent might benefit from a bit more detail on the summary fields. However, the schema's parameter descriptions are rich enough to compensate, and the description's mention of share_url and checkpoints gives a solid mental model.

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 91%, so the schema already documents nearly all parameters thoroughly. The description adds a high-level summary of what the tool returns but does not need to repeat parameter details. The baseline of 3 applies because the schema carries the heavy lifting; the description does not add significant parameter-level meaning beyond the schema.

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 states a specific verb ('Simulate'), a specific resource ('one dollar-cost-averaging plan'), and the data source ('real historical closes'). It also names concrete return artifacts (totals, end-of-year checkpoints, share_url), which distinguishes it from siblings like compare_plans and list_assets. The title and description align without tautology.

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 description implies the tool is for running a single DCA simulation, and the sibling list (compare_plans, data_status, list_assets) provides context, but the description does not explicitly say 'use this instead of compare_plans when you need one plan' or 'use list_assets to find valid asset keys.' The schema does mention 'Asset key from list_assets,' which is a cross-reference, but the main description lacks explicit when-to-use/when-not-to-use guidance. It is clear enough for an agent to infer, but not 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.

Resources